#1273 - Unknown collation: 'utf8'
To |
czdebian-l zavinac debian bod cz |
From |
Petr Heřman <ph zavinac lf2 bod cuni bod cz> |
Date |
Sun, 20 Jan 2008 03:21:59 +0100 |
Mail-followup-to |
czdebian-l zavinac debian bod cz |
User-agent |
Mutt/1.5.13 (2006-08-11) |
Jak jsem teď upgradeoval na lenny, tak tam mám
Linux 2.6.21-2-k7
apache2 2.2.6-3
libapache2-mod-php5 5.2.4-2+b1
mysql Server 5.0.45-5 (Debian)
phpMyadmin 4:2.11.3-2
po spuštění z URL
http://localhost/phpmyadmin/
namísto úvodní stránky vydá jen červený chlívek
s chybovou hláškou:
Chyba
MySQL hlásí:
#1273 - Unknown collation: 'utf8'
Vygoogloval jsem, že asi nejsem jediný na světě,
komu se takové věci stávají, ale žádné řešení jsem
stejně nenašel.
Na
http://dev.mysql.com/doc/refman/5.0/en/error-messages-server.html
ta chyba nijak blíž vysvětlená není.
Najednou koukám, že URL toho dokumentu je:
http://localhost/phpmyadmin/main.php?lang=cs-utf-8&convcharset=utf8&collation_connection=utf8&token=7c3840462ead0b159c6479ed776575ef
Tak ten ocas z okénka browseru umažu, nechám tam jen:
http://localhost/phpmyadmin/main.php
a dostanu normální přihlašovací okénko.
Zadám do něj login a passwd a tu hlášku tam mám znova, URL je teď:
http://localhost/phpmyadmin/index.php?lang=cs-utf-8&convcharset=utf8&collation_connection=utf8&token=29b468642492e450779d83d3a9b3da7f
Když ten ocas zase umažu a nechám tam jen:
http://localhost/phpmyadmin/index.php
tak mi to už nepomůže, to chybové okénko tam visí pořád.
Trik přestal fungovat.
Tak mi napadá jen, jestli náhodou ta kolace nemá být správně
'utf8_general_ci'
ale nevím, jak se tam k tomu serveru dostane.
Nebo to je tím, že ten mysql server má defaultně:
mysql> SHOW VARIABLES LIKE 'collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
Zkusil jsem dát do /etc/mysql/my.cnf
do sekce
[mysqld]
init-connect = 'SET NAMES utf8'
pak
/etc/init.d/mysql restart
mysql> SHOW VARIABLES LIKE 'collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
Ale nepomohlo to.
Tak jsem ještě přidal:
collation_server = utf8_unicode_ci
character_set_server=utf8
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
+----------------------+-----------------+
a furt nic.
A nakonec:
character_set_server = utf8
collation_server = utf8_unicode_ci
skip-character-set-client-handshake
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_unicode_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
+----------------------+-----------------+
a zase nic, takže chyba byde asi jinde.
Ve /var/www/phpmyadmin/scripts/setup.php
taky nevidim nic, kde by se něco takového dalo nastavit.
Tak fakt už teď nevim.
Petr Heřman
Partial thread listing:
- #1273 - Unknown collation: 'utf8', (pokračuje)
tisk souboru v jazyce PCL
Marek Nožka