Pernyataan Masalah:
Anda telah mencipta pengguna dengan kad bebas nama hos ('%'), tetapi anda tidak dapat menyambung dari jauh menggunakan itu pengguna.
Penjelasan:
Semasa mencipta pengguna dengan nama hos kad bebas membenarkan sambungan daripada mana-mana hos, ia memerlukan konfigurasi tambahan pada MySQL pelayan.
Penyelesaian:
Konfigurasikan MySQL Binding:
Edit fail konfigurasi MySQL anda ( my.cnf pada Linux, my.ini pada Windows) dan tambah baris berikut untuk mengikat port 3306 ke IP mesin anda alamat:
bind-address = xxx.xxx.xxx.xxx
Buat Pengguna dengan kedua-dua Hos 'localhost' dan '%':
Buat pengguna dengan kedua-dua 'localhost' dan '%' nama hos:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
Berikan Kebenaran:
Berikan kebenaran pada semua pangkalan data untuk hos tempatan dan nama hos kad bebas:
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%';
Keistimewaan Flush dan Terbuka Port:
Siram keistimewaan untuk menggunakan perubahan:
FLUSH PRIVILEGES;
Bergantung pada sistem pengendalian anda, anda mungkin perlu membuka port 3306 dalam tembok api anda untuk membenarkan sambungan jauh.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke Pelayan MySQL Saya Dari Jauh Walaupun dengan Nama Hos Wildcard?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!