![]() |
Показаны 12 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- MySQL (http://netadmin.ws/forum/forumdisplay.php?forumid=40)
-- Как базу mysql переделать из кодировки win-1251 в unicode (utf-8)? (http://netadmin.ws/forum/showthread.php?threadid=10903)
Как базу mysql переделать из кодировки win-1251 в unicode (utf-8)?
Как базу mysql переделать из кодировки win-1251 в unicode (utf-8)? Доступа ssh нет, но базу могу слить из инета и конвертнуть под WindowsXP. Вопрос только - чем?
__________________
www.ulver.com - сайт о Скандинавии и Язычестве
valhalla.ulver.com - конференция Valhalla
Varsosnill, можно попробовать вот так:
iconv -f WINDOWS-1251 -t UTF-8 db1251.sql > dbutf8.sql
Ð_асскажи, что получится 
вопрос - после конвертации я так понял что размер базы увеличится если не вдвое, то в несколько раз, да?
quote:
после конвертации я так понял что размер базы увеличится если не вдвое, то в несколько раз, да?
__________________
Всегда есть решение.
quote:Насколько я знаю, mysql сам пытается произвести конвертацию при изменении кодировки данных. Что касаемо дампа, то он обычно делается в UTF-8 (для mysql 4/5) и для конвертации достаточно исправить кодировку в "CREATE TABLE" блоках.
Как базу mysql переделать из кодировки win-1251 в unicode (utf-8)?
quote:Юникод использует два байта (и более) для хранения всех символов, за исключением символов первой части ASCII-таблицы. Поэтому если текст не на англ. языке, то размер может существенно возрасти.
Интересно, это почему же?
__________________
The time was broken ...
quote:А мне казалось, что MySQL (начиная с версий 4.1х) может на лету конвертировать выдаваемые данные в любую кодировку, но сами данные существующей базы при этом не конвертируются.
Насколько я знаю, mysql сам пытается произвести конвертацию при изменении кодировки данных. Что касаемо дампа, то он обычно делается в UTF-8 (для mysql 4/5) и для конвертации достаточно исправить кодировку в "CREATE TABLE" блоках.
polo, вот я это и имел ввиду:
quote:
Поэтому если текст не на англ. языке, то размер может существенно возрасти.
quote:
Varsosnill, можно попробовать вот так:
iconv -f WINDOWS-1251 -t UTF-8 db1251.sql > dbutf8.sql
__________________
www.ulver.com - сайт о Скандинавии и Язычестве
valhalla.ulver.com - конференция Valhalla
quote:это и у себя на компе можешь сделать, установи iconv и вперед, хотя Ultraedit рулит.
это где именно надо проделать?
__________________
Всегда есть решение.
quote:Вообщем да, хотя я сталкивался с дампами, которые после перекодировки в UE выдавали ошибку синтаксиса (при загрузке в базу).
Ultraedit рулит
__________________
The time was broken ...
Ну это часто бывает с полями типа BLOB содержащие бинарные данные, практика показывает что они вообще очень плохо переносимы.
__________________
Всегда есть решение.
Покорнейше прошу прощения за оффтоп, сёдня поставил (ура-ура) My 5.0.15 (не упущу возможности спросить: "Все вкурсе что 5ая верка перешла в разряд релаза/стабильной?"). Так вот, по поводу дампа, сделал:
mysqldump.exe --opt -u root -p --all-databases > all.sql
Потом соответственно:
mysql.exe -u root -p < all.sql
И... запарился ошибки убирать. Спотыкалась она в самых непонятных местах. типа CREATE DATABASE sun;
А вот CREATE DATABASE sunn; ему понравилось, точнее БД sun он создал, но use её не смог, или ещё чего то подобное, т.к. таблицы в неё он не добавил, а в sunn без проблем. такая же фигня с БД vb получилась, vbull проканал. И ещё в паре мест споткнулся...
__________________
Админ - вождь Апачей...
| Формат времени GMT. Текущее время 06:18. | Показаны 12 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.