Menyelesaikan masalah "Tidak Dapat Menyambung ke Pelayan MySQL Tempatan Melalui Soket" Ralat
Apabila cuba mewujudkan sambungan ke pelayan MySQL tempatan semasa ujian, pengguna menemui OperationalError dengan mesej berikut:
OperationalError: (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")
Walaupun ralat, pengguna berjaya menyambung menggunakan program baris arahan mysql. Memandangkan pelayan kelihatan berjalan dan soket wujud, puncanya masih sukar difahami.
Penyiasatan
Isu ini menunjukkan tingkah laku terputus-putus, kadangkala menjejaskan suite ujian dan masa lain bukan. Beralih untuk menggunakan hos 127.0.0.1 mengakibatkan ralat yang berbeza:
DatabaseError: Can't connect to MySQL server on '127.0.0.1' (61)
Penyelesaian
Penyelesaian yang dicadangkan adalah untuk melaksanakan arahan berikut sebagai superuser:
sudo /usr/local/mysql/support-files/mysql.server start
Arahan ini berjaya memulakan pelayan MySQL dan membenarkan pengguna membuat sambungan tanpa menghadapi ralat sebelumnya.
Pertimbangan Tambahan
Jika penyelesaian di atas tidak menyelesaikan isu, adalah dinasihatkan untuk mengesahkan bahawa mysqld sedang berjalan dan kemudian cuba menyambung ke pelayan.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke Pelayan MySQL Tempatan Saya Melalui Soket, Tetapi Barisan Perintah Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!