Mysql localhost != 127.0.0.1?
Memahami Perbezaan
Apabila menyambung ke pangkalan data MySQL tanpa menyatakan nama hos atau menggunakan 'localhost', unix mysqld menggunakan soket. Walau bagaimanapun, menggunakan alamat IP '127.0.0.1' sebagai hos mencetuskan sambungan rangkaian.
Kesan terhadap Keistimewaan
Perbezaan ini menjadi jelas dalam sistem GRANT. Secara lalai, geran yang diberikan kepada 'root'@'localhost' hanya digunakan untuk sambungan menggunakan soket. Untuk melanjutkan keistimewaan ini kepada sambungan dengan '127.0.0.1', anda perlu memberikannya secara eksplisit kepada 'root'@'127.0.0.1'.
Memberi SEMUA Keistimewaan daripada SEMUA Hos
Untuk memberikan keistimewaan penuh untuk pengguna 'root' daripada mana-mana hos kepada semua pangkalan data, gunakan arahan berikut:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Mengesahkan Keistimewaan
Mengesahkan keistimewaan yang dikemas kini:
mysql -u root -h 127.0.0.1 -pzenoss -e "SHOW GRANTS;"
Hasilnya kini akan memaparkan geran untuk 'root'@'127.0.0.1' bersama-sama dengan 'root'@'localhost'.
Atas ialah kandungan terperinci MySQL `localhost` lwn. `127.0.0.1`: Mengapa Ia Penting untuk Keistimewaan Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!