Я имею дело с некоторыми внешними API, и когда я сохраняю в db, я получаю некоторые ошибки кодирования. Весь контент, с которым я имею дело, находится в Unicode; но кодировка mysql установлена по-латински.
Кажется, что работает нормально на моей локальной системе, но выдает ошибку на сервере. Единственное различие между средами состоит в том, что локальная версия запускает python2.6, а удаленный сервер - python2.5
.
Ниже приведены спецификации mysql:
mysql> SHOW VARIABLES LIKE "character\_set\_database";
+------------------------+--------+
| Variable_name | Value |
+------------------------+--------+
| character_set_database | latin1 |
+------------------------+--------+
1 row in set (0.00 sec)
mysql> SHOW VARIABLES LIKE 'character\_set\_%';
+--------------------------+--------+
| Variable_name | Value |
+--------------------------+--------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
+--------------------------+--------+
7 rows in set (0.00 sec)
И вот ошибка, с которой я сталкиваюсь:
Incorrect string value: '\xCB\x8Cs&ae...' for column 'content' at row 1
Какие изменения в настройках mysql я должен сделать, чтобы больше не заниматься проблемами кодирования.