Why Not ? a deep breath and let yourself fall out of life

2Nis/090

MySQL’de latin1 bir tabloyu utf8′e gerçirmek

Adım 1:  Dump of Dump (MySQL Dump ile saf datayı alıyoruz)

mysqldump --user=kul -p --default-character-set=latin1 -c --insert-ignore --skip-set-charset dbname > dump.sql

Adım 2: Make (Yeni Veri Tabanı Oluştur)

mysql --user=user -p --execute="DROP DATABASE dbname;
CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci;"

Adım 3: From Dump To Clever (Eski datanın utf-8 e çevrilmesi)

iconv -f ISO-8859-1 -t UTF-8 dump.sql > dump_utf8.sql
perl -pi -w -e 's/CHARSET=latin1/CHARSET=utf8/g;' dump_utf8.sql

Adım 4: A little modify (Data içerisinden latin tabloların utf-8 yapılması)

nano ump_utf8.sql

diyerek SQL dosyamız içerisindeki create lerin popolarındaki latin işaretlerini utf8 olarak değiştiriyoruz.

Adım 5: Go Back Your Hole (Eski datamızı UTF-8 veri tabanımıza geri yüklüyoruz)

mysql --user=kul --max_allowed_packet=16M -p --default-character-set=utf8 dbname < dump_utf8.sql

Tabiki de sorunlarla karşılaşma olağınız var. Bu konuda elimden geldiğince yardımcı olacağım.