遇到 ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server 錯誤,表示用戶帳號的 Host 欄位限制為 localhost,不允許遠程連線。提供兩種標準解決方案。
mysql -u root -p
USE mysql;
UPDATE user SET Host = '%' WHERE User = 'root';
FLUSH PRIVILEGES;
SELECT Host, User FROM user;
% 代表允許任意主機連線192.168.1.%)FLUSH PRIVILEGES 重載權限GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
root 遠程連線,建立專用應用帳號SELECT, INSERT, UPDATE, DELETE)REQUIRE SSLmysql.user 表,移除無用帳號與過寬 Host# 從遠程主機測試
mysql -h 目標資料庫IP -u myuser -p