GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Memperbaiki Tidak dapat terhubung ke server MySQL lokal melalui socket /var/run/mysqld/mysqld.sock (2)

Pendahuluan

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 dapat mengakses mysqld.sock berkas soket.

Dalam tutorial ini, kita akan membahas kemungkinan penyebab 'Tidak dapat terhubung ke server MySQL lokal melalui soket ' dan menunjukkan metode yang berbeda untuk menyelesaikan masalah ini.

Prasyarat

  • Sistem yang menjalankan Ubuntu 20.04
  • Akun pengguna dengan hak istimewa sudo
  • Akses ke jendela terminal/baris perintah
  • Salinan MySQL yang terinstal dan siap digunakan (pelajari cara menginstalnya dengan panduan kami untuk menginstal MySQL di Ubuntu 20.04)

Menyelesaikan kesalahan 'Tidak dapat terhubung ke server MySQL lokal melalui soket '/var/run/mysqld/mysqld.sock' (2)'

Ada beberapa cara untuk mengatasi 'Tidak dapat terhubung ke server MySQL lokal melalui soket '/var/run/mysqld/mysqld.sock (2)' kesalahan. Jika satu solusi tidak berhasil, geser daftar ke bawah hingga Anda menemukan solusi yang menyelesaikan masalah.

Metode 1:Periksa Layanan MySQL

1. Periksa status layanan MySQL dengan:

sudo systemctl status mysql

2. Jika layanan tidak berjalan, restart dengan menggunakan:

sudo systemctl start mysql

3. Untuk mencegah masalah ini terjadi, setel layanan MySQL agar otomatis mulai saat boot:

sudo systemctl enable mysql

Metode 2:Verifikasi Lokasi mysqld.sock

'Tidak dapat terhubung ke server MySQL lokal melalui soket '/var/run/mysqld/mysqld.sock' (2)' kesalahan juga terjadi jika MySQL tidak dapat menemukan mysql.sock berkas soket.

1. Temukan mysqld.sock current saat ini lokasi dengan menggunakan find perintah untuk membuat daftar semua file soket di sistem Anda:

sudo find / -type s

2. Buka file konfigurasi MySQL dalam editor teks pilihan Anda. Dalam contoh ini, kami menggunakan nano :

sudo nano /etc/mysql/my.cnf

3. Kemudian, tambahkan baris berikut di akhir file konfigurasi MySQL:

[mysqld]
socket=[path to mysqld.sock]
[client]
socket=[path to mysqld.sock]

Dimana:

  • [path to mysqld.sock] :Jalur ke mysqld.sock socket file yang Anda temukan di Langkah 1 .

Metode lain adalah membuat symlink dari lokasi mysqld.sock ke /var/run/mysqld direktori:

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 /var/run/mysqld direktori karena pembatasan izin:

1. Untuk mengatasi masalah ini, ubah pengaturan izin untuk mysqld direktori dengan:

sudo chmod -R 755 /var/run/mysqld

Menyetel izin ke 755 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:

sudo systemctl restart mysql

Metode 4:Periksa Beberapa Instance MySQL

Kesalahan juga terjadi jika ada beberapa contoh MySQL yang berjalan secara bersamaan.

1. Untuk membuat daftar semua instance MySQL, gunakan:

ps -A|grep mysqld

2. Jika ada beberapa instance MySQL yang berjalan, hentikan dengan:

sudo pkill mysqld

3. Mulai ulang layanan MySQL untuk memulai satu instance MySQL:

sudo systemctl restart mysql

Ubuntu
  1. Cara Menginstal Server MySQL di Ubuntu 17.04

  2. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  3. Perbedaan Antara /var/log/messages, /var/log/syslog, Dan /var/log/kern.log?

  1. Tidak Dapat Menghubungkan Ke Jaringan Lokal Setelah Menghapus Semua yang Ada di /var/log?

  2. Bagaimana Cara Menghubungkan Ke Server Lokal?

  3. kesalahan:'Tidak dapat terhubung ke server MySQL lokal melalui soket '/var/run/mysqld/mysqld.sock' (2)' -- Hilang /var/run/mysqld/mysqld.sock

  1. Menghentikan server database MySQL:mysqld gagal

  2. Tidak dapat terhubung ke server MySQL lokal melalui socket '/var/run/mysqld/mysqld.sock' di Ubuntu 12.04.5 LTS

  3. mysqld_safe mysqld dari file pid /var/run/mysqld/mysqld.pid mencegah dari restart server