Coba perintah ini,
sudo service mysql start
Untuk menemukan semua file soket di sistem Anda, jalankan:
sudo find / -type s
Sistem server Mysql saya membuka soket di /var/lib/mysql/mysql.sock
Setelah Anda menemukan tempat soket dibuka, tambahkan atau edit baris ke file /etc/my.cnf Anda dengan jalur ke file soket:
socket=/var/lib/mysql/mysql.sock
Terkadang skrip startup sistem yang meluncurkan baris perintah yang dapat dieksekusi menentukan tanda --socket=path
. Bendera ini dapat mengesampingkan lokasi my.cnf, dan itu akan mengakibatkan soket tidak ditemukan di tempat yang seharusnya ditunjukkan oleh file my.cnf. Kemudian ketika Anda mencoba menjalankan klien baris perintah mysql, itu akan membaca my.cnf untuk menemukan soket, tetapi tidak akan menemukannya karena menyimpang dari tempat server membuatnya. Jadi, Kecuali jika Anda peduli di mana soket berada, hanya mengubah my.cnf agar sesuai seharusnya berfungsi.
Kemudian, hentikan proses mysqld. Cara Anda melakukannya akan berbeda menurut sistem.
Jika Anda adalah pengguna super di sistem linux, coba salah satu dari yang berikut ini jika Anda tidak mengetahui metode khusus yang digunakan penyiapan Mysql Anda:
service mysqld stop
/etc/init.d/mysqld stop
mysqladmin -u root -p shutdown
- Beberapa sistem tidak diatur untuk memiliki cara yang elegan untuk menghentikan mysql (atau karena alasan tertentu mysql tidak merespons) dan Anda dapat menghentikan paksa mysql dengan:
- Satu langkah:
pkill -9 mysqld
- Dua langkah (paling tidak disukai):
- Temukan id proses mysql dengan
pgrep mysql
ataups aux | grep mysql | grep -v grep
- Dengan asumsi id proses adalah
4969
akhiri dengankill -9 4969
- Temukan id proses mysql dengan
- Satu langkah:
Setelah Anda melakukan ini, Anda mungkin ingin mencari file pid di /var/run/mysqld/
dan hapus
Pastikan izin pada soket Anda sedemikian rupa sehingga pengguna apa pun yang dijalankan mysqld dapat membaca/menulisnya. Tes yang mudah adalah membukanya untuk baca/tulis penuh dan lihat apakah masih berfungsi:
chmod 777 /var/run/mysqld/mysqld.sock
Jika itu menyelesaikan masalah, Anda dapat menyesuaikan izin dan kepemilikan soket sesuai kebutuhan berdasarkan pengaturan keamanan Anda.
Juga, direktori tempat soket berada harus dapat dijangkau oleh pengguna yang menjalankan proses mysqld.
Kesalahan ini terjadi karena beberapa instalasi mysql. Jalankan perintah:
ps -A|grep mysql
Hentikan proses dengan menggunakan:
sudo pkill mysql
dan kemudian jalankan perintah:
ps -A|grep mysqld
Bunuh juga proses ini dengan menjalankan:
sudo pkill mysqld
Sekarang Anda sudah siap, cukup jalankan perintah berikut:
service mysql restart
mysql -u root -p
Selamat bekerja mysql lagi
-
Tidak dapat terhubung ke server MySQL lokal melalui socket '/var/run/mysqld/mysqld.sock' di Ubuntu 12.04.5 LTS
-
mysqld_safe mysqld dari file pid /var/run/mysqld/mysqld.pid mencegah dari restart server
-
NGINX:connect() ke unix:/var/run/php7.0-fpm.sock gagal (2:Tidak ada file atau direktori seperti itu)