root@localhost,無法遠程管理admin,保留 root 僅本機使用-- 1. 本機以 root 登入
mysql -uroot -p
-- 2. 授權本機存取 (可選,視需求)
GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'strong_password' WITH GRANT OPTION;
-- 3. 授權任意主機遠程存取 (關鍵)
GRANT ALL PRIVILEGES ON *.* TO admin@'%' IDENTIFIED BY 'strong_password' WITH GRANT OPTION;
% 為通配符,代表任意主機。WITH GRANT OPTION 允許授權他人。
INSERT INTO mysql.user
VALUES ('%', 'admin', PASSWORD('strong_password'),
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
FLUSH PRIVILEGES;
注意:
mysql.user 表結構 (版本間可能不同)DESCRIBE mysql.user; 確認欄位數與順序FLUSH PRIVILEGES 重載權限mysql -h 伺服器IP -uadmin -padmin@'192.168.1.%' 替代 %mysql.user 異常帳號