ben. sql dosyasını ftp de httpdocs klasörünün içine attım bu durumda; mysql --default-character-set=latin1 -u veritabanı_kullanıcıadı -p veritabanıadı &lt; /dizin/yedek. sql komutundaki son kısmı nasıl ve neye göre değiştirmem gerek

Teşekkürler nokie

merhaba, sErKAn'ın anlattığına göre çözüm olacak herşeyi yazdım fakat öyle sanıyorumki elinizdeki yedekte bir sorun var gibi, çünkü türkçe karakter olayında sadece karakterler yerine soru işaretleri çıkıyor sayfayı açınca örnek: ? gibi. yani karakterler sitede soru işareti çıkıyor, sizin sorunda ise karakterler bozuk görünüyor, bence eski hosttan aldığınız yedeklerden kaynaklanıyor. Bu problem genelde 4.1. x serisinden aldığınız yedeği, mysql'un eski sürümüne mesela 4.0x serisine yüklerken olur.

eski hostta ki version 4.0 serisiydi evet fakat artık oraya giriş yetkim hiç bi şekilde yok. şuanki dedicated makinemde de 4.0 serisi var zaten. başka yapabileceğim birşey yokmu? Makalenizde anlattığınız türkçe karakter için gerekli ayarları da serverıma yaptım.

Pardon yanlış yazmışım. Eski sunucumda mysql versiyon 4.1.18 idi. Şimdiki sunucumda ise 4.1.19. Bu durumda sizin anlattıklarınıza göre tr karakterlerde sorun olmaması gerekiyor ama hala tr karakter sorunu yaşıyorum.

serkan adlı arkadaşım benim yerime yazıyordu. Ben sorunun asıl sahibiyim. Bu hesap üzerinden cevap vereceğim bundan sonra. Nokie dediğin herşeyi yaptım harfi harfiyen ve hiç bi şekilde düzelme olmadı 2 haftadır bu sorunla karşı karşıyayım. Bu yüzden 2 haftadır ziyaretçilerim siteye giremiyor ve feci durumda zarara uğramış durumdayım. Başka önerebileceğin çözüm var mı? Bu arada msn kullanıyorsan özelden atarsan çok sevinirim. Sevgiler..

Dediğiniz şekilde, yani; mysql --default-character-set=latin1 -u veritabanı_kullanıcıadı -p veritabanıadı &lt; /dizin/yedek. sql ile yedeği yükledim fakat tr karakterler hala bozuk &quot;TÃ1⁄4m 9nokta2 Ã1⁄4yeleri aÃ3⁄4aÃ°Ã1⁄2daki kurallarÃ1⁄2 Ã1⁄4ye...&quot; Böyle cıkıyor..

Elimde eski hosttan alıp üzerinde hiç oynamadığım yedek hala duruyor. Yedeği ediyor ile açtığımda default charset latin1 gözüküyor ve karakterler de &quot;Çünkü acý&quot; gibi gözüküyor. Şimdi ben hiç dokunmadan bu. sql yi mi yüklemem gerek ve. sql dosyası 20mb olduğu için nasıl yüklücem? Bigdump ile yüklemem sorun olurmu? Ayrıca yüklemeden önce phpmyadminden açtığım database için ayar yapmam gerkeiyor mu?

hmm, sanırım senin yedeği yüklemek istediğin sunucunun mysql versiyonu 4.0. x serisi? eğer öyleyse eski hostundan yedeği alırken --compatible=mysql40 --default-character-set=latin1 anahtarıyla aldırman gerekiyor, çünkü 4.0x serisinde karakter setlerini kendi algılamıyor.

ilk önce makinene ssh bağlantısı yapmalısın , son kısmı yani: /dizin/yedek. sql bölümünü dosyayı hangi klasöre attıysan o yolu yazıcaksın htdocs ise yani ana dizin şu şekilde yapmalısın: /vhosts/kullanıcıadı/httpdocs/yedek_dosyan. sql yada /vhosts/domain.com/httpdocs/yedek_dosyan. sql olması gerekli ikisinden biri.

merhaba, makalemde anlattıklarım sadece mysql 4.1. x serisi içindi, yani 4.0x de karakter setleri olmadığı için o ayarlar çalışmayacaktır, yani şu aşamada hem eski hostun hemde makinen 4.0x serisi kullanıyorsa hiç bir problem olmaması gerekir. yanlız anlayamadığım bir konu, ilk mesajınızda charsetleri elle latin5 olarak değiştirdim demiştiniz, yani charsetler sadece mysql 4.1. x sürümünde bulunur demekki eski hostunuz 4.1. x serisi kullanıyor? Dediğim gibi: --compatible=mysql40 --default-character-set=latin1 anahtarlarıyla eski hostunuzdan dump yedeği alırsanız probleminiz çözülecektir, elinizdeki yedeği alırken karakter seti varsayılan olarak UTF-8 tanımlandığından 4.0. x serisi bir makineye bunu yüklediğinizde yukarıda sizin yazdığınız gibi karakterler bozuk görünür. Ama yukarıdaki verdiğim anahtarlarla alınırsa karakterler düzelir ve bu yedeği yüklediğinizde problem olmaz.

bigdump la falan uğraşmayın sunucu sizinse ssh yok mu? phpmyadmnilede uğraşmayın yedeği alırken ve yüklerken ssh kullanın nokie nin imzasında nasıl yapacağınızla ilgili bir yazı var

iki serverda 4.1. x ise sorun yok demektir, tek bir sorum var ozaman; veri tabanını doğru karakter setiyle oluşturdunmu? örnek: CREATE DATABASE veritabanıadı CHARSET=latin1 COLLATE=latin1_swedish_ci; (senin veri tabanı latin1 olduğu için böyle yapıyoruz) eğer oluşturmadıydan henüz bu şekilde oluşturup, yedeği bu oluşturduğun veri tabanına yüklemeyi dene bakalım. not: aslında veritabanın latin1 olması baştan beri hata olmuş çünkü mysql yeni versiyonlarında bu karakakter olayında çok hassas.

forum sistemi neydi acaba mesela phpnuke de tek mainfile. php den ayar yaparak düzeltebiliyorduk db de karakterler bozuk olsada.

şimdi karakterlerin bozuk görüntülenmesi, yedeği alırken karakter seti anahtarının belirtilmemesinden kaynaklanıyor, bildiğiniz gibi mysql yeni versiyonlarında artık varsayılan olarak UTF-8 kullanıyor bu nedenle karakter seti belirtilmeyen yedeklerde ö, ç, ü, ı vs. gibi garakterlerin yerine bozuk harfler çıkıyor. Yedeğini yüklemen için 2 seçenek var; 1. mysqldump --default-character-set=latin1 -u veritabanı_kullanıcıadı -p veritabanıadı &gt; /dizin/yedek. sql komutuyla eski host firmana yedek aldırıp, daha sonra bu yedeği yeni serverına aşağıdaki komutla yüklemek: mysql --default-character-set=latin1 -u veritabanı_kullanıcıadı -p veritabanıadı &lt; /dizin/yedek. sql 2. Şuan elindeki latin1 ile kodlanmış ve üzerinde elle değişiklik yapılmamış veri tabanını aşağıdaki komutla karakter seti belirtip yeni sunucuna yüklemek: mysql --default-character-set=latin1 -u veritabanı_kullanıcıadı -p veritabanıadı &lt; /dizin/yedek. sql her iki seçenekte sorunsuz çalışacaktır.

bu arada şimdilik çıkmam gerekiyor eğer dosya yolunu bulmakta sıkıntı çekersen: locate yedekdosyan. sql komutu yardımıyla doğru dizin yolunu bulabilirsin.

Kendi dedicated makinamı aldım ve forum sitemi eski host şirketimden phpmyadmin kullanarak taşıdım yani yedeğini aldım. Aldığım yedekte tr karakterler bozuk olduğu için tr karakterleri editor bir programla açıp kendim elle düzelttim ve latin1 olan tablo charsetlerini de elle latin5 olarak düzelttim. . sql dosyam büyük olduğu için bigdump ile yeni sunucumda veritabanını yüklüyorum. Fakat; forumumda tr karakterler hala bozuk çıkıyor. Ne yapmalıyım?

yedekteki karakterlerin bozuk olduğuna aldanmayın, yedeği yüklerken charset kısmından tanıyıp doğru karakterlerle yüklüyor normalde, yani latin5 olarak elle değiştirmeniz yanlış bişey, bu tamamen elinizdeki yedeğin hasarlı olmasına yol açar. eğer hala eski sunucudan yedek alabilme şansınız varsa: --default-character-set=latin1 anahtarını ekleyerek alın, sizin veri tabanınız latin1 ile kodlanmış olduğu için latin1 olarak alacaksınız yedeklerinizi, sonra yeni sunucunuza yükleyin. ayrıca imzamdaki linke tıklayarak sunucunuzdaki mysql türkçe ayarlarını yapın. not: mümkünse yedek alırken ve yüklerken phpmyadmin kullanmamaya özen gösterin.