MySQL localhost != 127.0.0.1?
在沒有主機名或使用“localhost”調用時,由於MySQL 的套接字使用情況而出現此差異' 主機名稱。如下所示,使用主機名稱「127.0.0.1」的MySQL 透過TCP/IP 套接字連接:
$ mysql -u root -h 127.0.0.1 -e 'show tables' created_from_host; +-----------------------------+ | Tables_in_created_from_host | +-----------------------------+ | test | +-----------------------------+
但是,使用「localhost」透過UNIX 套接字連接,導致以下錯誤:
$ mysql -u root -h localhost -e 'show tables' created_from_host; ERROR 1049 (42000): Unknown database 'created_from_host'
如何從所有主機授予所有資料庫的所有權限root?
要向「root」使用者授予不受限制的權限,請執行以下SQL 語句:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
其他注意事項:
以上是為什麼 MySQL 對待「localhost」與「127.0.0.1」不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!