Mysql爲了安全性,在默認狀況下用戶只容許在本地登陸,但是在有此狀況下,仍是須要使用用戶進行遠程鏈接,所以爲了使其能夠遠程須要進行以下操做:mysql
1、容許root用戶在任何地方進行遠程登陸,並具備全部庫任何操做權限,sql
具體操做以下:數據庫
在本機先使用root用戶登陸mysql: mysql -u root -p"youpassword" 進行受權操做:安全
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;服務器
重載受權表:線程
FLUSH PRIVILEGES;日誌
退出mysql數據庫:索引
exitget
2、容許root用戶在一個特定的IP進行遠程登陸,並具備全部庫任何操做權限,具體操做以下: 在本機先使用root用戶登陸mysql: mysql -u root -p"youpassword" 進行受權操做: GRANT ALL PRIVILEGES ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword" WITH GRANT OPTION; 重載受權表: FLUSH PRIVILEGES; 退出mysql數據庫: exitit
3、容許root用戶在一個特定的IP進行遠程登陸,並具備全部庫特定操做權限,具體操做以下: 在本機先使用root用戶登陸mysql: mysql -u root -p"youpassword" 進行受權操做: GRANT select,insert,update,delete ON *.* TO root@"172.16.16.152" IDENTIFIED BY "youpassword"; 重載受權表: FLUSH PRIVILEGES; 退出mysql數據庫: exit
4、刪除用戶受權,須要使用REVOKE命令,具體命令格式爲: REVOKE privileges ON 數據庫[.表名] FROM user-name; 具體實例,先在本機登陸mysql: mysql -u root -p"youpassword" 進行受權操做: GRANT select,insert,update,delete ON TEST-DB TO test-user@"172.16.16.152" IDENTIFIED BY "youpassword"; 再進行刪除受權操做: REVOKE all on TEST-DB from test-user; ****注:該操做只是清除了用戶對於TEST-DB的相關受權權限,可是這個「test-user」這個用戶仍是存在。 最後從用戶表內清除用戶: DELETE FROM user WHERE user="test-user"; 重載受權表: FLUSH PRIVILEGES; 退出mysql數據庫: exit