Rumah >pangkalan data >tutorial mysql >Mengapa Hos Kad Liar MySQL '%' Tidak Memberi Akses Jauh Secara Automatik?
Akses Jauh untuk Pengguna MySQL
Apabila cuba mewujudkan sambungan jauh ke pangkalan data MySQL menggunakan pengguna pengguna@'%' dan kata laluan kata laluan, sambungan gagal walaupun aksara kad bebas % menandakan akses daripada mana-mana hos.
Sebab untuk Kegagalan
Kad bebas aksara % dalam medan hos pengguna MySQL tidak memberikan akses jauh secara automatik. Untuk menyambung dari jauh, langkah berikut diperlukan:
Ikat MySQL ke Alamat IP Mesin: Konfigurasikan MySQL untuk mengikat port 3306 ke alamat IP mesin anda dalam my.cnf (atau my.ini pada Windows) sebagai berikut:
bind-address = xxx.xxx.xxx.xxx
Buat Pengguna dalam Localhost dan Wildcard: Cipta pengguna dalam hos localhost dan % wildcard menggunakan arahan berikut:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
Berikan Kebenaran: Berikan penuh kebenaran pada semua pangkalan data kepada pengguna daripada localhost dan wildcard:
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%'; FLUSH PRIVILEGES;
Pertimbangan Tambahan
Uji sambungan jauh dengan arahan berikut:
mysql -h <hostname> -u myuser -pmypass
Atas ialah kandungan terperinci Mengapa Hos Kad Liar MySQL '%' Tidak Memberi Akses Jauh Secara Automatik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!