1--source include/not_windows.inc 2--source include/have_case_sensitive_file_system.inc 3 4 5# 6# Note, please keep this file UTF-8 compatible. 7# After editing, make sure that 8# "file mysql_locale_posix.test" 9# says 10# "UTF-8 Unicode text" 11# or 12# "UTF-8 Unicode English text" 13# 14 15 16# 17# Check if we're running on a POSIX-locale machine 18# 19 20--disable_query_log 21--exec locale -a > $MYSQLTEST_VARDIR/tmp/locale_a.output 2>/dev/null || true 22SET @file=REPLACE(LOAD_FILE('../../tmp/locale_a.output'), '-', ''); 23# 24# Note, file content must be case sensitive. 25# Some platforms are case sensitive regarding to locale name. 26# For example, on HP-UX 27# LANG=cs_CZ.iso88592 - works fine 28# LANG=cs_CZ.ISO88592 - does not work 29# 30--remove_file $MYSQLTEST_VARDIR/tmp/locale_a.output 31 32if (`SELECT (IFNULL(@file,'') NOT LIKE '%\nde_DE.iso88591\n%')`) 33{ 34 Skip Need POSIX locale de_DE.iso88591; 35} 36 37if (`SELECT (IFNULL(@file,'') NOT LIKE '%\nru_RU.koi8r\n%')`) 38{ 39 Skip Need POSIX locale ru_RU.koi8r; 40} 41 42if (`SELECT (IFNULL(@file,'') NOT LIKE '%\ncs_CZ.iso88592\n%')`) 43{ 44 Skip Need POSIX locale cs_CZ.iso88592; 45} 46 47if (`SELECT (IFNULL(@file,'') NOT LIKE '%\nen_US.utf8\n%')`) 48{ 49 Skip Need POSIX locale en_US.utf8; 50} 51--enable_query_log 52 53 54 55SET NAMES utf8; 56 57--disable_warnings 58DROP DATABASE IF EXISTS `ó`; 59DROP DATABASE IF EXISTS `Ăł`; 60DROP DATABASE IF EXISTS `цЁ`; 61DROP DATABASE IF EXISTS `ó`; 62--enable_warnings 63 64# 65# Test some of the OS-to-MySQL character set mappings 66# 67 68 69# {"ANSI_X3.4-1968", "ascii", my_cs_exact}, 70# {"ansi1251", "cp1251", my_cs_exact}, 71# {"armscii8", "armscii8", my_cs_exact}, 72# {"ASCII", "ascii", my_cs_exact}, 73# {"Big5", "big5", my_cs_exact}, 74# {"cp1251", "cp1251", my_cs_exact}, 75# {"cp1255", "cp1255", my_cs_exact}, 76# {"CP866", "cp866", my_cs_exact}, 77# {"eucCN", "gb2312", my_cs_exact}, 78# {"eucJP", "ujis", my_cs_exact}, 79# {"eucKR", "euckr", my_cs_exact}, 80# 81# {"gb18030", "gb18030", my_cs_exact}, 82# 83# {"gb2312", "gb2312", my_cs_exact}, 84# {"gbk", "gbk", my_cs_exact}, 85# {"georgianps", "geostd8", my_cs_exact}, 86# {"IBM-1252", "cp1252", my_cs_exact}, 87# 88# {"iso88591", "latin1", my_cs_approx}, 89# {"ISO_8859-1", "latin1", my_cs_approx}, 90# {"ISO8859-1", "latin1", my_cs_approx}, 91# {"ISO-8859-1", "latin1", my_cs_approx}, 92 93 94# 95# _utf8 0xC3B3 = LATIN SMALL LETTER O WITH ACUTE 96# _latin1 0xC3 = LATIN CAPITAL LETTER A WITH TILDE 97# _latin1 0xB3 = SUPERSCRIPT THREE 98# 99--echo 100--echo iso88591 101--exec LC_ALL=fi_FI.iso88591 $MYSQL --default-character-set=auto test -e "SELECT @@character_set_client" 102--exec LC_ALL=fi_FI.iso88591 $MYSQLADMIN -uroot -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-character-set=auto create ó 103--exec LC_ALL=fi_FI.iso88591 $MYSQL_SHOW --default-character-set=auto ó 104--exec LC_ALL=fi_FI.iso88591 $MYSQL_CHECK --default-character-set=auto "ó" 105 106 107# {"iso885913", "latin7", my_cs_exact}, 108# {"ISO_8859-13", "latin7", my_cs_exact}, 109# {"ISO8859-13", "latin7", my_cs_exact}, 110# {"ISO-8859-13", "latin7", my_cs_exact}, 111# 112# {"iso885915", "latin9", my_cs_exact}, 113# {"ISO_8859-15", "latin9", my_cs_exact}, 114# {"ISO8859-15", "latin9", my_cs_exact}, 115# {"ISO-8859-15", "latin9", my_cs_exact}, 116# 117# {"iso88592", "latin2", my_cs_exact}, 118# {"ISO_8859-2", "latin2", my_cs_exact}, 119# {"ISO8859-2", "latin2", my_cs_exact}, 120# {"ISO-8859-2", "latin2", my_cs_exact}, 121# 122 123 124# 125# _utf8 0xC3B3 = LATIN SMALL LETTER O WITH ACUTE 126# _latin2 0xC3 = LATIN CAPITAL LETTER A WITH BREVE 127# _latin2 0xB3 = LATIN SMALL LETTER L WITH STROKE 128# 129--echo 130--echo iso88592 131--exec LC_ALL=cs_CZ.iso88592 $MYSQL --character-sets-dir=$MYSQL_SHAREDIR/charsets --default-character-set=auto test -e "SELECT @@character_set_client" 132--exec LC_ALL=cs_CZ.iso88592 $MYSQLADMIN --character-sets-dir=$MYSQL_SHAREDIR/charsets -uroot -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-character-set=auto create ó 133--exec LC_ALL=cs_CZ.iso88592 $MYSQL_SHOW --character-sets-dir=$MYSQL_SHAREDIR/charsets --default-character-set=auto ó 134--exec LC_ALL=cs_CZ.iso88592 $MYSQL_CHECK --character-sets-dir=$MYSQL_SHAREDIR/charsets--default-character-set=auto "ó" 135 136 137# {"iso88597", "greek", my_cs_exact}, 138# {"ISO_8859-7", "greek", my_cs_exact}, 139# {"ISO8859-7", "greek", my_cs_exact}, 140# {"ISO-8859-7", "greek", my_cs_exact}, 141# 142# {"iso88598", "hebrew", my_cs_exact}, 143# {"ISO_8859-8", "hebrew", my_cs_exact}, 144# {"ISO8859-8", "hebrew", my_cs_exact}, 145# {"ISO-8859-8", "hebrew", my_cs_exact}, 146# 147# {"iso88599", "latin5", my_cs_exact}, 148# {"ISO_8859-9", "latin5", my_cs_exact}, 149# {"ISO8859-9", "latin5", my_cs_exact}, 150# {"ISO-8859-9", "latin5", my_cs_exact}, 151# 152# {"koi8r", "koi8r", my_cs_exact}, 153# {"KOI8-R", "koi8r", my_cs_exact}, 154# {"koi8u", "koi8u", my_cs_exact}, 155# {"KOI8-U", "koi8u", my_cs_exact}, 156# 157 158# 159# _utf8 0xC3B3 = LATIN SMALL LETTER O WITH ACUTE 160# _koi8r 0xC3 = CYRILLIC SMALL LETTER TSE 161# _koi8r 0xB3 = CYRILLIC CAPITAL LETTER IO 162# 163 164--echo 165--echo koi8r 166--exec LC_ALL=ru_RU.koi8r $MYSQL --character-sets-dir=$MYSQL_SHAREDIR/charsets --default-character-set=auto test -e "SELECT @@character_set_client" 167--exec LC_ALL=ru_RU.koi8r $MYSQLADMIN --character-sets-dir=$MYSQL_SHAREDIR/charsets -uroot -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-character-set=auto create ó 168--exec LC_ALL=ru_RU.koi8r $MYSQL_SHOW --character-sets-dir=$MYSQL_SHAREDIR/charsets --default-character-set=auto ó 169--exec LC_ALL=ru_RU.koi8r $MYSQL_CHECK --character-sets-dir=$MYSQL_SHAREDIR/charsets --default-character-set=auto "ó" 170 171 172# {"Shift_JIS", "sjis", my_cs_exact}, 173# {"SJIS", "sjis", my_cs_exact}, 174# 175# {"tis620", "tis620", my_cs_exact}, 176# 177# {"ujis", "ujis", my_cs_exact}, 178# 179# {"US-ASCII", "ascii", my_cs_exact}, 180# 181# {"utf8", "utf8", my_cs_exact}, 182# {"utf-8", "utf8", my_cs_exact}, 183 184--echo 185--echo utf8 186--exec LC_ALL=en_US.utf8 $MYSQL --default-character-set=auto test -e "SELECT @@character_set_client" 187--exec LC_ALL=en_US.utf8 $MYSQLADMIN -uroot -S $MASTER_MYSOCK -P $MASTER_MYPORT --default-character-set=auto create ó 188--exec LC_ALL=en_US.utf8 $MYSQL_SHOW --default-character-set=auto ó 189--exec LC_ALL=en_US.utf8 $MYSQL_SHOW --default-character-set=auto "ó" 190--exec LC_ALL=en_US.utf8 $MYSQL_SHOW --default-character-set=auto "Ăł" 191--exec LC_ALL=en_US.utf8 $MYSQL_SHOW --default-character-set=auto "цЁ" 192--exec LC_ALL=en_US.utf8 $MYSQL_CHECK --default-character-set=auto ó 193--exec LC_ALL=en_US.utf8 $MYSQL_CHECK --default-character-set=auto "ó" 194--exec LC_ALL=en_US.utf8 $MYSQL_CHECK --default-character-set=auto "Ăł" 195--exec LC_ALL=en_US.utf8 $MYSQL_CHECK --default-character-set=auto "цЁ" 196 197SHOW DATABASES LIKE 'ó'; 198SHOW DATABASES LIKE 'Ăł'; 199SHOW DATABASES LIKE 'цЁ'; 200SHOW DATABASES LIKE 'ó'; 201 202DROP DATABASE `ó`; 203DROP DATABASE `Ăł`; 204DROP DATABASE `цЁ`; 205DROP DATABASE `ó`; 206