|
Тема
|
mysqldump -> utf8?
|
|
Автор |
Dakota (erotoman) |
Публикувано | 25.07.11 01:31 |
|
Как да накарам mysqldump да плюе в utf8?
Версията е 5.1.49, имам това:
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
И пускам ето това:
mysqldump --default-character-set=utf8 -r xxx.sql -u root -p db
Във файла xxx.sql обаче изобилстват маймуни от този тип:
МиниÑ<81>терÑ<81>тво на транÑ<81>порта, информационните техноло
гии и Ñ<81>ъобщениÑ<8f>та
П.П.: Дира ги кодира, но са някакви главни D-та, с чертички и градуси около тях.
Редактирано от Dakota на 25.07.11 01:32.
| |
|
Какво е това?
| character_set_database | latin1 |
Смени кодировката:
ALTER DATABASE BazaDanni CHARACTER SET utf8;
| |
|
Не успях да впечатля особено базата с това.
Иначе интересното е, че като пусна маймунския дъмп на мой сървър от конзола, всичко си е пушка. Като го пусна през phpmyadmin-а на host.bg, обаче, нещата се записват 1/1 с дъмпа, т.е. прецакани.
И така... засега съм ги сложил юнаците на моя си сървър, ама би било добре да ги подкарам където си им е мястото, че иначе язък, че се потих да си припомням какво беше това MySQL...
| |
|
Не успях да впечатля особено базата с това.
Тогава си промени Collation ръчно от Operations на phpmyAdmin на цялата база данни и на всяка таблица по отделно, ако е нужно. И преди да пуснеш дъмпа на сървъра, се увери, че няма вече създадена база данни с това име там.
| |
|
Колацията и на базата и на таблиците е utf8_general_ci, според phpMyAdmin.
Все пак, нека се върнем на въпроса - защо дъмпа се олива така, че дори с vim да не мога да го разчета (при правилна кодировка на терминала)?
| |
|
Все пак, нека се върнем на въпроса - защо дъмпа се олива така, че дори с vim да не мога да го разчета (при правилна кодировка на терминала)?
Ето тук отговор на подобен въпрос:
| |
|
Това свърши работа, 10х.
Даже не се наложи частта с iconv. Просто е било latin1, колкото и да не се виждаше.
| |
|
|
|
|