Rumah >pangkalan data >tutorial mysql >Mengapa Saya Tidak Boleh Menyambung ke Pelayan MySQL Saya daripada Hos Jauh Walaupun `bind-address = 0.0.0.0`?

Mengapa Saya Tidak Boleh Menyambung ke Pelayan MySQL Saya daripada Hos Jauh Walaupun `bind-address = 0.0.0.0`?

Patricia Arquette
Patricia Arquetteasal
2024-12-17 08:06:25754semak imbas

Why Can't I Connect to My MySQL Server from a Remote Host Despite `bind-address = 0.0.0.0`?

Ralat sambungan Mysql: HOST '' Tidak dapat menyambung ke pelayan MySQL

Apabila cuba menyambung ke MySQL menggunakan arahan mysql Apabila cuba menyambung ke pelayan, anda menerima mesej ralat berikut:

ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server

Ralat ini menunjukkan bahawa pelayan telah dikonfigurasikan untuk membenarkan hanya hos tertentu menyambung dan hos anda tiada dalam senarai yang dibenarkan .

Semak kebenaran pengguna root

Dalam kes anda, anda telah menetapkan bind-address kepada 0.0.0.0 dalam my.cnf yang bermaksud pelayan harus Menerima sambungan daripada semua hos. Walau bagaimanapun, anda masih tidak boleh menyambung. Ini mungkin kerana pengguna root hanya dibenarkan untuk menyambung daripada localhost.

Untuk menyemak ini, jalankan pertanyaan berikut:

SELECT host FROM mysql.user WHERE User = 'root';

Jika keputusan tidak mengandungi nama hos atau alamat IP yang anda cuba sambungkan, anda perlu memberikan kebenaran kepada pengguna akar daripada hos itu Kebenaran untuk menyambung.

Berikan kebenaran untuk menyambung

Untuk memberikan kebenaran pengguna root untuk menyambung daripada hos tertentu, gunakan arahan berikut:

CREATE USER 'root'@'host_ip' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'host_ip';

di mana host_ip ialah Alamat IP hos yang anda ingin benarkan sambungan.

Jika anda ingin memberikan kebenaran sambungan kepada semua hos, anda boleh menggunakan kad bebas %:

CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

Akhir sekali, muat semula kebenaran untuk berkuat kuasa serta-merta:

FLUSH PRIVILEGES;

Sekarang, anda harus Keupayaan untuk menggunakan arahan mysql untuk menyambung ke pelayan MySQL daripada hos jauh yang ditentukan.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke Pelayan MySQL Saya daripada Hos Jauh Walaupun `bind-address = 0.0.0.0`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn