Pengguna yang bekerja dengan MySQL dapat mengalami kesalahan 'Tidak dapat terhubung ke server MySQL lokal melalui soket'/var/run/mysqld/mysqld. sock (2)' saat masuk ke antarmuka MySQL. Masalah ini biasanya muncul jika MySQL tidak bisa mengakses mysqld. file soket kaus kaki
Dalam tutorial ini, kita akan membahas kemungkinan penyebab kesalahan 'Tidak dapat terhubung ke server MySQL lokal melalui soket' dan menunjukkan kepada Anda berbagai metode untuk menyelesaikan masalah ini
Prasyarat
- Sistem yang menjalankan Ubuntu 20. 04
- Akun pengguna dengan hak sudo
- Akses ke jendela terminal/baris perintah
- Salinan MySQL terinstal dan siap digunakan (pelajari cara menginstalnya dengan panduan kami untuk menginstal MySQL di Ubuntu 20. 04)
Menyelesaikan 'Tidak dapat terhubung ke server MySQL lokal melalui soket'/var/run/mysqld/mysqld. kaus kaki' (2)' Kesalahan
Ada beberapa cara untuk mengatasi 'Tidak dapat terhubung ke server MySQL lokal melalui soket'/var/run/mysqld/mysqld. kaus kaki (2)' kesalahan. Jika satu solusi tidak berhasil, turunkan daftar sampai Anda menemukan solusi yang menyelesaikan masalah
Metode 1. Periksa Layanan MySQL
1. Periksa status layanan MySQL dengan
sudo systemctl status mysql2. Jika layanan tidak berjalan, mulai ulang dengan menggunakan
3. Untuk mencegah masalah ini terjadi, setel layanan MySQL untuk memulai secara otomatis saat boot
sudo systemctl enable mysqlMetode 2. Verifikasi mysqld. Lokasi kaus kaki
Pesan 'Tidak dapat terhubung ke server MySQL lokal melalui soket'/var/run/mysqld/mysqld. kesalahan sock' (2)' juga terjadi jika MySQL tidak dapat menemukan file mysql. file soket kaus kaki
1. Temukan mysqld saat ini. lokasi sock dengan menggunakan perintah sudo systemctl start mysql_3 untuk membuat daftar semua file socket di sistem Anda
sudo find / -type s_2. Buka file konfigurasi MySQL di editor teks pilihan Anda. Dalam contoh ini, kami menggunakan nano
sudo nano /etc/mysql/my.cnf3. Kemudian, tambahkan baris berikut di akhir file konfigurasi MySQL
[mysqld] socket=[path to mysqld.sock] [client] socket=[path to mysqld.sock] _Di mana
- sudo systemctl start mysql_4. Jalan menuju mysqld. file soket kaus kaki yang Anda temukan di Langkah 1
Metode lain adalah membuat symlink dari lokasi mysqld. sock ke direktori /var/run/mysqld
ln -s [path to mysqld.sock] /var/run/mysqld/mysqld.sock_4. Tekan Ctrl+X untuk menutup file konfigurasi dan ketik Y dan tekan Enter untuk menyimpan perubahan yang Anda buat
4. Terakhir, restart layanan MySQL
sudo systemctl restart mysql_Metode 3. Periksa Izin Folder MySQL
Penyebab potensial lainnya adalah Layanan MySQL tidak dapat mengakses direktori /var/run/mysqld karena pembatasan izin
1. Untuk mengatasi masalah ini, ubah pengaturan izin untuk direktori mysqld dengan
sudo chmod -R 755 /var/run/mysqldMenyetel izin ke sudo systemctl start mysql_5 memungkinkan pengguna root untuk membaca, menulis, dan mengeksekusi direktori, sementara pengguna lain hanya dapat membaca dan mengeksekusi
2. Mulai ulang layanan MySQL agar perubahan diterapkan
Metode 4. Periksa Beberapa Instance MySQL
Error juga terjadi jika ada beberapa instance MySQL yang berjalan pada waktu yang bersamaan
1. Untuk mendaftar semua contoh MySQL, gunakan
sudo systemctl start mysql_02. Jika ada beberapa instance MySQL yang berjalan, hentikan dengan
sudo systemctl start mysql_13. Mulai ulang layanan MySQL untuk memulai satu contoh MySQL
sudo systemctl restart mysql_Kesimpulan
Setelah membaca tutorial ini, Anda seharusnya telah mengidentifikasi penyebab kesalahan 'Tidak dapat terhubung ke server MySQL lokal melalui soket' dan menerapkan solusi yang sesuai
Saya mendapatkan kesalahan yang sama juga "ERROR 2002 (HY000). Tidak dapat terhubung ke server MySQL lokal melalui socket '/var/lib /mysql/mysql. kaus kaki' (111)". Saya telah mencopot dan menginstal ulang MySQl beberapa kali dan menghabiskan beberapa jam untuk memecahkan masalah. Masalah yang saya perhatikan adalah ketika saya menambahkan kredensial di my. File opsi cnf terletak di /etc/my. cnf karena ini akan menyebabkan masalah MySQL dengan memulai layanan dan akan membuang kesalahan
Untuk mengatasi ini, saya menghapus kredensial dari my. file opsi cnf di /etc/my. cnf dan saya membuat. -ku. file opsi cnf di direktori home. Misalnya /home/namapengguna/. -ku. cnf di Linux (ganti nama pengguna dengan nama pengguna Anda di Linux) dan tambahkan kredensial di sana. Tidak ada masalah setelah itu