Včera jsem se do pozdních večerních hodin trápil s přesunem několika databází ze starého MySQL serveru na nový. Celý problém spočíval pouze v tom, že jsem nemohl naimportovat databázi obsahující češtinu tak, aby se text neproměnil v 'rozsypaný čaj'.
Po dlouhém trápení jsem konečně přišel na to, že musí být správné kódování nastaveno po celé trase komunikace. Tzn. ztrojová data, klient, db spojení, server/databáze/tabulka. Jako užitečnou pomůcku je možné použít následující výpis:
Po dlouhém trápení jsem konečně přišel na to, že musí být správné kódování nastaveno po celé trase komunikace. Tzn. ztrojová data, klient, db spojení, server/databáze/tabulka. Jako užitečnou pomůcku je možné použít následující výpis:
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)