Bu hata,
MySQL sunucusuna yerel bir soket (socket) üzerinden bağlanılamadığını gösteriyor.
Error 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' hatası genellikle MySQL sunucusu çalışmıyor, durdurulmuş veya yanlış yapılandırılmış olduğunda ortaya çıkar.
Sorunu çözmek için aşağıdaki adımları deneyebilirsin:
1.
Öncelikle, MySQL sunucusunun çalışıp çalışmadığını kontrol et:
bash
Kodu kopyala
sudo service mysql status<br><span># veya</span><br>sudo systemctl status mysql<br>
- Eğer sunucu çalışmıyorsa, şu komutla başlatabilirsin:
bash
Kodu kopyala
sudo service mysql start<br><span># veya</span><br>sudo systemctl start mysql<br>
2.
Bazen basit bir yeniden başlatma sorunu çözebilir:
bash
Kodu kopyala
sudo service mysql restart<br><span># veya</span><br>sudo systemctl restart mysql<br>
3.
Hata mesajında
/tmp/mysql.sock yolunun kullanıldığını görüyoruz. Bu dosyanın gerçekten mevcut olup olmadığını kontrol et:
bash
Kodu kopyala
<span>ls</span> -la /tmp/mysql.sock<br>
- Eğer bu dosya yoksa, muhtemelen MySQL sunucusu doğru bir şekilde başlatılmadı veya yanlış bir socket yolu kullanıyor.
4.
MySQL yapılandırma dosyanızda yanlış bir socket ayarı olabilir. Yapılandırma dosyasını aç:
bash
Kodu kopyala
sudo nano /etc/mysql/my.cnf<br><span># veya</span><br>sudo nano /etc/my.cnf<br>
Aşağıdaki satırları kontrol et veya ekle:
ini
Kodu kopyala
<span>[client]</span><br><span>socket</span> = /var/run/mysqld/mysqld.sock<br><br><span>[mysqld]</span><br><span>socket</span> = /var/run/mysqld/mysqld.sock<br>
- Eğer /tmp/mysql.sock yerine /var/run/mysqld/mysqld.sock kullanılıyorsa, MySQL istemcisini de bu yeni socket yoluna yönlendirmen gerekebilir.
- Dosyayı düzenledikten sonra MySQL'i yeniden başlat:
bash
Kodu kopyala
sudo service mysql restart<br>
5.
Eğer hala sorun devam ediyorsa, MySQL veritabanını onarmayı deneyebilirsin:
bash
Kodu kopyala
sudo mysqlcheck --all-databases --repair<br>
6.
Eğer yukarıdaki adımlar sorunu çözmezse, MySQL'i yeniden kurmayı deneyebilirsin:
bash
Kodu kopyala
sudo apt-get remove --purge mysql-server mysql-client mysql-common<br>sudo apt-get autoremove<br>sudo apt-get autoclean<br>sudo apt-get install mysql-server<br>
Bu işlem sırasında
veritabanı yedeklerin varsa önceden yedeklemeyi unutma.
Özet
Bu adımları deneyerek
MySQL bağlantı problemini çözebilirsin. Özellikle
sunucunun çalışıp çalışmadığını kontrol etmek ve
my.cnf dosyasını düzenlemek genellikle sorunu çözer.