Perbaiki: ERROR 2003 (HY000): Tidak dapat terhubung ke server MySQL di '127.0.0.1' (111)
Tutorial ini dimaksudkan untuk menjelaskan langkah-langkah yang diperlukan untuk mengatasi “ERROR 2003 (HY000): Tidak dapat terhubung ke server MySQL di '127.0.0.1' (111) ” yang mungkin terjadi saat Anda mencoba mengakses server basis data MySQL.
Sebelum melangkah lebih jauh, jika Anda adalah pengguna Linux yang baru mengenal MySQL/MariaDB, maka Anda dapat mempertimbangkan untuk mempelajari MySQL/MariaDB untuk Pemula – Bagian 1 dan 20 Perintah MySQL (Mysqladmin) untuk Administrasi Basis Data di Linux juga.
Di sisi lain, jika Anda sudah menjadi pengguna MySQL tingkat menengah/berpengalaman, Anda dapat menguasai 15 Tip Berguna Penyetelan dan Pengoptimalan Kinerja MySQL/MariaDB ini.
Catatan: Untuk tutorial ini, diasumsikan Anda telah menginstal server database mysql.
Kembali ke titik fokus, apa saja kemungkinan penyebab kesalahan ini?
- Kegagalan jaringan terutama jika server database mysql berjalan pada host jarak jauh.
- Tidak ada server mysql yang berjalan pada host yang disebutkan.
- Firewall memblokir koneksi TCP-IP atau alasan terkait lainnya.
Di bawah ini adalah langkah-langkah penting untuk mengatasinya.
1. Jika server database berada pada mesin jarak jauh, cobalah menguji konektivitas klien-server menggunakan perintah ping
, misalnya:
ping server_ip_address
Setelah ada konektivitas, gunakan perintah ps
di bawah ini yang menampilkan informasi tentang pilihan proses yang aktif, bersama dengan perintah pipe
dan grep, untuk memeriksa apakah daemon mysql berfungsi berjalan di sistem Anda.
ps -Af | grep mysqld
di mana pilihannya:
-A
– mengaktifkan pemilihan semua proses-f
– mengaktifkan daftar format penuh
Jika tidak ada output dari perintah sebelumnya, jalankan layanan mysql sebagai berikut:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
Setelah memulai layanan mysql, coba akses server database:
mysql -u username -p -h host_address
2. Jika Anda masih mendapatkan kesalahan yang sama, tentukan port (defaultnya adalah 3306) yang didengarkan daemon mysql dengan menjalankan perintah netstat.
netstat -lnp | grep mysql
di mana pilihannya:
-l
– menampilkan port mendengarkan-n
– memungkinkan tampilan alamat numerik-p
– menampilkan PID dan nama program yang memiliki soket
Oleh karena itu gunakan opsi -P
untuk menentukan port yang Anda lihat dari output di atas saat mengakses server database:
mysql -u username -p -h host_address -P port
3. Jika semua perintah di atas berhasil dijalankan, tetapi Anda masih melihat kesalahan, buka file konfigurasi mysql.
vi /etc/mysql/my.cnf
OR
vi /etc/mysql/mysql.conf.d/mysqld.cnf
Cari baris di bawah dan beri komentar menggunakan karakter #
:
bind-address = 127.0.0.1
Simpan file dan keluar, kemudian restart layanan mysql seperti:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
Namun, jika Anda menjalankan firewallD atau Iptables, coba tinjau layanan firewall dan buka port mysql, dengan asumsi itu adalah firewall yang memblokir koneksi TCP-IP ke server mysql Anda.
Itu saja! Apakah Anda mengetahui cara lain atau punya saran untuk mengatasi error koneksi MySQL di atas? Beri tahu kami dengan memberikan komentar melalui formulir umpan balik di bawah.