Оног тренутка када сам покренуо форум УКЛиК и срео се са потребом да направим идентичну копију на локалном серверу, наишао сам на проблем при пребацивању MySQL базе у локал.
Проблем се огледа у неправилном третирању UTF-8 карактера ако се извоз и увоз врши преко phpMyAdmin-а.
Наиме, ако се база извезе са UTF-8 кодним распоредом, и под истим увезе у локалну базу, уместо функционалног садржаја добија се преведени текст и уместо нашђих ћириличних и латиничних карактера у локалном форуму се виде упитници. Покушао сам да ово урадим и са записима, али је проблем остао исти.
О овоме сам писао и на [es] форумима крајем септембра, али нисам добио ваљаних одговора.
Данас сам мало тражио по нету (а.к.а. гуглао) и нашао решење око исправног увоза у локалну базу. Наиме, база која се извезе преко phpMyAdmin-а у UTF-8 кодном распореду у локалну базу треба да се дода преко шел наредбе:
# mysql -p назив_локлне_базе < добијена_база.sql
на овај начин ће двобајтни карактери остати нетакнути и адекватно третирани приликом SQL упита из форумског софтвера.
Ево мало лепше и срећније решенје од phpmyadmina за комплетни бекап целе базе, заједно са администраторским и корисничким налозима, решенје носи вертикалну компатабилност . Што га чини портабилним између две различите верзије mysql-a
# mysqldump \
-uroot \
-p$PASSWORD \
-hlocalhost \
--all-databases \
--all \
--opt \
--allow-keywords \
--flush-logs \
--hex-blob \
--master-data \
--max_allowed_packet=16M \
--quote-names \
--result-file=BACKUP.SQL
Надам се да ће ово помоћи.
Успут ово ћирилично – латинично решенје на блогу и није баш …
# mysql -p назив_локлне_базе &добијена_база.sql
Umesto znaka & treba da stoji znak za manje (a mozda je do konverzije cilirica<->latinica problem).
mysql -hhost -uuser -ppass imebaze < dumpovan_fajl.sql
наишао сам на проблем при пребацивање MySQL базе у локал.
Обрати пажњу на „пребацивање“ ;)
Хехе, да :D Јуче је била добра извала: „…ставе им жабу у устима, увече, и она мора…“ и то поновљено пар пута за редом :)