mysql -u root -p
USE mysql;
UPDATE user SET host = '%' WHERE user = 'root';
SELECT host, user FROM user;
FLUSH PRIVILEGES; -- 必須執行生效
-- 任意主機、全權限、可授權
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
-- 指定 IP
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
mysql -h localhost -u root
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT
⚠️ 生產環境嚴禁 root 遠程、通配符主機、無密碼、全庫全表權限。最小權限原則:專用帳號 + 指定 IP + 指定庫 + 強密碼。