Bug #54517 no charset ascii in 5.1.47 Community Server
Submitted: 15 Jun 2010 14:22 Modified: 15 Jun 2010 15:21
Reporter: - - Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: Charsets Severity:S2 (Serious)
Version:5.1.47 OS:MacOS (10.6.3)
Assigned to: CPU Architecture:Any
Tags: charset, regression

[15 Jun 2010 14:22] - -
Description:
In my old versions (5.0.45) there are 26 charsets, in the new version (5.1.47) there are only 15 charsets.

How to repeat:
Install 5.1.47 x86_64 on MacOS 10.6

Suggested fix:
Add the missing charsets, at least:
ascii,cp850,macroman
[15 Jun 2010 14:27] Valeriy Kravchuk
With 5.1.46 I still see them all:

valeriy-kravchuks-macbook-pro:trunk openxs$ ls /usr/local/mysql-5.1.46-osx10.5-x86_64/share/charsets/
Index.xml	cp1256.xml	geostd8.xml	koi8u.xml	macroman.xml
README		cp1257.xml	greek.xml	latin1.xml	swe7.xml
armscii8.xml	cp850.xml	hebrew.xml	latin2.xml
ascii.xml	cp852.xml	hp8.xml		latin5.xml
cp1250.xml	cp866.xml	keybcs2.xml	latin7.xml
cp1251.xml	dec8.xml	koi8r.xml	macce.xml
[15 Jun 2010 14:29] Valeriy Kravchuk
And I still see them all with 5.1.47 (on Mac OS X 10.5.x though):

valeriy-kravchuks-macbook-pro:trunk openxs$ ls /usr/local/mysql-5.1.47-osx10.5-x86_64/share/charsets/
Index.xml	cp1256.xml	geostd8.xml	koi8u.xml	macroman.xml
README		cp1257.xml	greek.xml	latin1.xml	swe7.xml
armscii8.xml	cp850.xml	hebrew.xml	latin2.xml
ascii.xml	cp852.xml	hp8.xml		latin5.xml
cp1250.xml	cp866.xml	keybcs2.xml	latin7.xml
cp1251.xml	dec8.xml	koi8r.xml	macce.xml

What am I doing wrong?
[15 Jun 2010 14:36] - -
The files exist:
seneca:~ root# ls /usr/local/share/mysql/charsets/
Index.xml       ascii.xml       cp1256.xml      cp852.xml       geostd8.xml     hp8.xml         koi8u.xml       latin5.xml      macroman.xml
README          cp1250.xml      cp1257.xml      cp866.xml       greek.xml       keybcs2.xml     latin1.xml      latin7.xml      swe7.xml
armscii8.xml    cp1251.xml      cp850.xml       dec8.xml        hebrew.xml      koi8r.xml       latin2.xml      macce.xml

But:
mysql> show character set;
+---------+-------------+---------------------+--------+
| Charset | Description | Default collation   | Maxlen |
+---------+-------------+---------------------+--------+
| big5    |             | big5_chinese_ci     |      2 |
| latin1  |             | latin1_swedish_ci   |      1 |
| latin2  |             | latin2_general_ci   |      1 |
| ujis    |             | ujis_japanese_ci    |      3 |
| sjis    |             | sjis_japanese_ci    |      2 |
| tis620  |             | tis620_thai_ci      |      1 |
| euckr   |             | euckr_korean_ci     |      2 |
| gb2312  |             | gb2312_chinese_ci   |      2 |
| cp1250  |             | cp1250_general_ci   |      1 |
| gbk     |             | gbk_chinese_ci      |      2 |
| utf8    |             | utf8_general_ci     |      3 |
| ucs2    |             | ucs2_general_ci     |      2 |
| binary  |             | binary              |      1 |
| cp932   |             | cp932_japanese_ci   |      2 |
| eucjpms |             | eucjpms_japanese_ci |      3 |
+---------+-------------+---------------------+--------+
15 rows in set (0.00 sec)

mysql> CREATE DATABASE `Temp` CHARACTER SET "ascii" COLLATE "ascii_bin";
ERROR 1115 (42000): Unknown character set: 'ascii'
[15 Jun 2010 14:42] Valeriy Kravchuk
This is really strange. Look:

valeriy-kravchuks-macbook-pro:mysql-5.1.47-osx10.5-x86_64 openxs$ bin/mysql -uroot test
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.47 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show character set;
+----------+-----------------------------+---------------------+--------+
| Charset  | Description                 | Default collation   | Maxlen |
+----------+-----------------------------+---------------------+--------+
| big5     | Big5 Traditional Chinese    | big5_chinese_ci     |      2 |
| dec8     | DEC West European           | dec8_swedish_ci     |      1 |
| cp850    | DOS West European           | cp850_general_ci    |      1 |
| hp8      | HP West European            | hp8_english_ci      |      1 |
| koi8r    | KOI8-R Relcom Russian       | koi8r_general_ci    |      1 |
| latin1   | cp1252 West European        | latin1_swedish_ci   |      1 |
| latin2   | ISO 8859-2 Central European | latin2_general_ci   |      1 |
| swe7     | 7bit Swedish                | swe7_swedish_ci     |      1 |
| ascii    | US ASCII                    | ascii_general_ci    |      1 |
| ujis     | EUC-JP Japanese             | ujis_japanese_ci    |      3 |
| sjis     | Shift-JIS Japanese          | sjis_japanese_ci    |      2 |
| hebrew   | ISO 8859-8 Hebrew           | hebrew_general_ci   |      1 |
| tis620   | TIS620 Thai                 | tis620_thai_ci      |      1 |
| euckr    | EUC-KR Korean               | euckr_korean_ci     |      2 |
| koi8u    | KOI8-U Ukrainian            | koi8u_general_ci    |      1 |
| gb2312   | GB2312 Simplified Chinese   | gb2312_chinese_ci   |      2 |
| greek    | ISO 8859-7 Greek            | greek_general_ci    |      1 |
| cp1250   | Windows Central European    | cp1250_general_ci   |      1 |
| gbk      | GBK Simplified Chinese      | gbk_chinese_ci      |      2 |
| latin5   | ISO 8859-9 Turkish          | latin5_turkish_ci   |      1 |
| armscii8 | ARMSCII-8 Armenian          | armscii8_general_ci |      1 |
| utf8     | UTF-8 Unicode               | utf8_general_ci     |      3 |
| ucs2     | UCS-2 Unicode               | ucs2_general_ci     |      2 |
| cp866    | DOS Russian                 | cp866_general_ci    |      1 |
| keybcs2  | DOS Kamenicky Czech-Slovak  | keybcs2_general_ci  |      1 |
| macce    | Mac Central European        | macce_general_ci    |      1 |
| macroman | Mac West European           | macroman_general_ci |      1 |
| cp852    | DOS Central European        | cp852_general_ci    |      1 |
| latin7   | ISO 8859-13 Baltic          | latin7_general_ci   |      1 |
| cp1251   | Windows Cyrillic            | cp1251_general_ci   |      1 |
| cp1256   | Windows Arabic              | cp1256_general_ci   |      1 |
| cp1257   | Windows Baltic              | cp1257_general_ci   |      1 |
| binary   | Binary pseudo charset       | binary              |      1 |
| geostd8  | GEOSTD8 Georgian            | geostd8_general_ci  |      1 |
| cp932    | SJIS for Windows Japanese   | cp932_japanese_ci   |      2 |
| eucjpms  | UJIS for Windows Japanese   | eucjpms_japanese_ci |      3 |
+----------+-----------------------------+---------------------+--------+
36 rows in set (0.00 sec)

mysql> CREATE DATABASE `Temp` CHARACTER SET "ascii" COLLATE
    -> "ascii_bin";
Query OK, 1 row affected (0.36 sec)

Can you, please, give me exact URL you had used to download that your 5.1.47 binaries?
[15 Jun 2010 14:55] - -
http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.47-osx10.6-x86_64.tar.gz/from/ftp:/...
[15 Jun 2010 15:10] - -
I got it! Inserting

character-sets-dir = /usr/local/share/mysql/charsets

to nearly all stanzas in /etc/my.cnf did the trick.
It's not a problem of mysql, it's a problem of my installation.
Thanks for your time and help. Please close this bug.