Tidak dapat terhubung ke server mysql lokal melalui socket / var lib mysql mysql sock 2 masukkan kata sandi saat ini untuk root enter for none ):?

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

How to fix 'can't connect to local MySQL server through socket' error

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 mysql

Checking the status of the MySQL service

2. Jika layanan tidak berjalan, mulai ulang dengan menggunakan

sudo systemctl start mysql
_

3. Untuk mencegah masalah ini terjadi, setel layanan MySQL untuk memulai secara otomatis saat boot

sudo systemctl enable mysql

Set the MySQL service to automatically start when the system boots up

Metode 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
_

List all the socket files on your system using the find command

2. Buka file konfigurasi MySQL di 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]
_

Di mana

  • sudo systemctl start mysql
    _4. Jalan menuju mysqld. file soket kaus kaki yang Anda temukan di Langkah 1

Edit the MySQL configuration file

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/mysqld

Menyetel 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

sudo systemctl restart mysql
_

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
_0

Listing all currently running instance of MySQL

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

sudo systemctl start mysql
_1

3. 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

Bagaimana cara terhubung ke MySQL melalui soket?

Hubungkan ke MySQL dengan soket unix .
Temukan file soket Unix Di host server di baris perintah, jalankan perintah berikut. .
Periksa koneksi soket Unix dari baris perintah.
Unduh pustaka pihak ketiga.
Konfigurasikan driver MySQL di DataGrip.
Buat koneksi ke server MySQL

Tidak dapat terhubung ke server MySQL lokal?

Berikut adalah beberapa alasan kesalahan Tidak dapat terhubung ke server MySQL lokal mungkin terjadi. mysqld tidak berjalan di host lokal . Periksa daftar proses sistem operasi Anda untuk memastikan proses mysqld ada. Anda menjalankan server MySQL di Windows dengan banyak koneksi TCP/IP.

Bagaimana cara memperbaiki kesalahan 2002 di MySQL?

Mungkin menginstal ulang lebih mudah. stackoverflow. com/a/31984482/763744. – Zernel. .
Setel ulang kata sandi dengan menghentikan MySQL dan memulainya dalam mode aman dengan melewatkan tabel --grant. – davejal. .
ketik ini di terminal Anda "sudo apt-get install mysql-server".
Mulai atau mulai ulang layanan mysql dan periksa. .
systemctl mulai mariadb. melayani

Di mana kaus kaki MySQL?

sock file ada dengan menjalankan perintah ls pada direktori tempat MySQL berharap menemukannya. ls -a /var/run/mysqld/