Bu öğretici, .sql dosyalarını komut satırı aracılığıyla içe aktarırken görünen hatayı çözer. .SQL Dosyasını İçe Aktar Error - MySQL server has gone away.
Zorunda olduğumuzda içe aktarılan dosyalar .SQL birinde büyük tarih üssüaracılığıyla klasik yöntem phpMyAdmin çok da iyi bir çözüm değil. Çoğu zaman bir "reqest timeout". İçe aktarmak .SQL fileto Error - MySQL server has gone away.
En basiti bağlanmak SSH /console veritabanını tutan sunucuya dosyayı yükleyelim .sql ve ardından içe aktarma için belirli komut satırlarını yürütün.
mysql -u db_user -p -h localhost db_name < /path/sql_file.sql
Komut satırını çalıştırdıktan ve veritabanı şifresini girdikten sonra şu hatayla karşılaşırsanız: "ERROR 2006 (HY000) at line 1281: MySQL server has gone away", çoğu zaman içe aktarılan dosyalar için bir hacim sınırını aşmakla ilgilidir.
Standart konfigürasyonlarda olması çok olasıdır. MySQL, belirlenen hacim sınırı "max_allowed_packet”, veritabanına aktarmak istediğiniz dosyanınkinden daha küçük olmalıdır.
En basit çözüm " dosyasını düzenlemektir.my.cnf” ve ihtiyaçlarımıza uygun bir limit oluşturmaktır. Örneğin, bir dosyayı içe aktarmak istiyorsak .SQL 320 MB, ardından dosyayı düzenliyoruz "my.cnf"Ve şu satırı ekliyoruz:
max_allowed_packet=400M
Düzenleyip kaydettikten sonra sunucu üzerinde mysql servisini yeniden başlatın ve import için komut satırını yeniden başlatın. Her şey Import .SQL Dosyası olmadan çalışmalıdır Error - MySQL server has gone away.