Титла: Mysqldump encodings Публикувано от: Marto в Apr 20, 2007, 17:37 Искам да прехвърля базата на един wordpress блог. Прочетох това : http://www.hostbulgaria.com/tutorials/mysql-charset-encoding.aspx
Стигнах до извода, че нищо не разбрах. За мен до момента блога ми е работил на utf8, и се е отварял на utf8, и базата е била съответно на utf8. Как да я дъмпна, така че да стане? Много е оплетено всичко. Опитвам се да я импортна в един phpMyAdmin. И си мисля, че там нещо не е тамън. Ето какво правя : 1. mysqldump -u root -p --default-character-set=latin1 wordpress > wordpress.sql Ако тук не използвам --default-character-set=latin1 файла е нечетим през FireFox с енкодинг utf-8. 2. Импортирам в phpMyAdmin с настройка да работи на utf8. Резултата после в сайта е ????. Правя и същото, но с perl -pi -e "s/latin1/utf8/g" wordpress.sql Тогава сайта пак не се чете на uft8, каквото е по default, но ако от firefox сменя на CP-1251 се оправя ... което вобще не ми се вързва. Пробвах още много варианти. Цял ден си играх. Някой знае ли вълшебната формула за забъркване на кашичката? Благодаря ! Титла: Mysqldump encodings Публикувано от: alabal в Apr 20, 2007, 18:23 Предложение: защо не използваш iconv?
Нещо такова: # mysqldump -u root -p wordpress > wordpress.sql и после iconv -f staria_encoding -t novia_encoding wordpress.sql > wordpress_ne.sql и после: mysql -u root -p wordpress < wordpress_ne.sql За да видиш възможните кодирания: iconv -l (така и не разбрах кое кодиране искаш да промениш) man на iconv е много полезен - ако съм объркал нещо - лесно може да се провери). P.S.: А, май в края на статията е предложен точно такъв вариант. Титла: Mysqldump encodings Публикувано от: Marto в Apr 20, 2007, 19:10 Ами аз и това пробвах, но не ми е ясно кой е стария, и кой новия encoding. Аз до колкото ги виждам нещата, нищо не искам да смнеям. Би трябвало от utf8, на uft8 нищо да не се сменя. Как да разбера, кой е стария, кой е новия. Искам да работя само с utf8. По едно време така ги бях завъртял нещата и аз не помня вече как, че аха да се оправи ама се оказа, че "И" и "ш" ми излизат като "?" и "??".
Титла: Mysqldump encodings Публикувано от: luda_glawa в Apr 20, 2007, 20:24 Принципно "dump" файла по-подразбиране е с кодировка utf-8. Виж какви са разликите между двата SQL сървъра, които използваш.
цък
цък 2 Титла: Mysqldump encodings Публикувано от: Marto в Apr 21, 2007, 09:38 Винаги за мен тази каша с енкодингите ще си остане каша. Нещо не ми се отдава да ги разбера, но все пак си реших проблема. Ще опиша как, а ако има човек, който е разбрал ситуацията, нека внесе малко светлина. Мисля, че ще се улесни работата на много хора. Първо ето нещо, което може да е от помощ : http://www.oreillynet.com/onlamp...._t.html
Второ, ето как аз си реших проблема :
Ако не сложа --default-character-set=latin1 не става. Версията на MySQL сървъра от който експортирам е 5.0.24a, а тази в която импортирам 5.0.27. Навеждат ме някакви мисли, че MySQL сървъра ми не е компилиран с default charset utf8, но пак не съм съвсем сигурен какво точно е това latin1 и какво общо има всичко с CP1251, след като сайта до сега е работил на utf-8. Открих решението, благодарение на разиграване на варианти и проби в FireFox със смяна на encodings. Титла: Mysqldump encodings Публикувано от: zeridon в Apr 21, 2007, 11:14 ето ти и едно малко по лесно решение ... даже 2
1) инсталираш си разширението database backup за WP или 2) използваш функционалността на WP за import/export на цял блог Титла: Mysqldump encodings Публикувано от: Marto в Apr 21, 2007, 22:25 Даааа даааа .. само си помислих, че се е оправило. Пак важи онзи гаден проблем с "И" = "?" и "ш" = "??"
|