Bu konu bir kitap olabilir, ancak son zamanlarda yaşadığım bir problemi anlatayım. Elimde mysql 5 database in alınmış bir yedeği var, ve bunun UTF-8 de alındığını teyit ettim:
# file tum.sql
tum.sql: UTF-8 Unicode English text, with very long lines, with LF, NEL line terminators
PLESK de veri tabanını yarattım, Utf-8 formatında oldugunu teyit ettim, ve database i restore ettim..
#mysql -uadmin -p --one-database Px_commerce < tum.sql
Sonuç hezimet: Harfler patlak ve sorunlu.. Epey araştırmadan sonra çözümü şöyleymiş:
#mysql -uadmin -p --one-database Px_commerce --default-character-set=utf8 < tum.sql
Buradaki --default-character-set komutu, mysql programının mysqld ile görüşme protokolünü belirliyormuş. Latin1 görüşüyorlar demek default - veya swedish?