Dijital Ürün Alış ve Satışı için: Buraya Tıkla

Sesli dinle

Bununla birkaç kez karşılaştım ve normalde cevabın çok düşük bir varsayılan max_allowed_packet ayarı olduğunu buldum.

/etc/my.cnf veya my.ini dosyasında ([mysqld] altında) 8 veya 16M'ye yükseltmek genellikle sorunu çözer.

(MySql 5.7'deki varsayılan değer 4194304'tür, yani 4 MB'dir.)

[mysqld]
max_allowed_packet=100 MB yapmanız sizin için daha avantajlı olacaktır.

Not: Eğer mevcut değilse sadece satırı oluşturun, [mysqld] altında bir giriş olarak görünmelidir.

Not: Bu, sunucunuz çalışırken ayarlanabilir, ancak mysql arka plan programı yeniden başlatıldıktan sonra kaybolacaktır. SET GLOBAL max_allowed_packet=104857600 kullanın (bu, onu 100 MB'a ayarlar)

Not: Windows'ta my.ini veya my.cnf dosyanızı UTF-8 kodlaması yerine ANSI ile kaydetmeniz gerekebilir.

Mevcut Ayarlar:

# The MySQL server
default-character-set=utf8mb4
[mysqld]
port=3306
socket="/xampp/mysql/mysql.sock"
basedir="/xampp/mysql"
tmpdir="/xampp/tmp"
datadir="/xampp/mysql/data"
pid_file="mysql.pid"
# enable-named-pipe
key_buffer=16M
max_allowed_packet=1M
sort_buffer_size=512K
net_buffer_length=8K
read_buffer_size=256K
read_rnd_buffer_size=512K
myisam_sort_buffer_size=8M
log_error="mysql_error.log"

"Mysql Sunucusu zaman aşımı" hatasını nasıl düzeltirim?

MySQL sunucusunun kaybolmasının (hata 2006) iki ana nedeni ve çözümü vardır:

Sunucu zaman aşımına uğradı ve bağlantıyı kapattı. Düzeltmek için my.cnf yapılandırma dosyanızdaki wait_timeout mysql değişkeninin yeterince büyük olup olmadığını kontrol edin, örneğin wait_timeout = 28800
Ayrıca my.cnf yapılandırmanızdaki innodb_log_file_size mysql değişkenini örneğin innodb_log_file_size = 128MB veya daha yüksek bir değere yükseltmeniz gerekebilir.
Sunucu yanlış veya çok büyük bir paket yüklediniz. MySQL çok büyük veya yanlış bir paket alırsa istemcide bir şeylerin ters gittiğini varsayar ve bağlantıyı kapatır. Düzeltmek için my.cnf dosyasındaki max_allowed_packet maksimum paket boyutu sınırını artırabilirsiniz, örn. max_allowed_packet = 128M olarak ayarlayın, ardından MySQL sunucunuzu yeniden başlatın: sudo /etc/init.d/mysql restart
Veritabanı sunucusunda yer kalmadı. Bu veritabanında Veritabanı Şeması değişiklikleri gerektiren bir güncelleme gerçekleştirilirken meydana gelebilir (Özellikle büyük veritabanları için).
Bu değişiklikleri yaptıktan ve MySQL veya MariaDB sunucunuzu yeniden başlattıktan sonra sorun çözülmeli ve artık hata tetiklenmemelidir.

Değilse, örneğin 128M değerlerini 256M'ye çıkarmayı deneyin. Çok fazla trafik ve veri bulunan web sitelerinde değeri 1024M'ye çıkarmanız bile gerekebilir.

Yukarıdaki değişiklikler sorunu çözmezse ve MYSQLI bağdaştırıcısını kullanıyorsanız, config/config.ini.php dosyanızda bağdaştırıcı = PDO\MYSQL'e geçmeyi deneyin.


Yorumlar (0)
henüz yorum yok
Tema Ayarları

Kendi özelleştirilmiş stilini belirle

Mod Seç

Uygulamanız için mükemmel renk modunu seçin.


RTL Mode

Dil yönünüzü değiştirin


Fluid Layout

Tam ekran modu aç/kapat


Navigasyon Konumu

Web sitesi için uygun bir menü sistemi seçin


Görünüm