CentOS 配置MySQL容許遠程登陸

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數據庫:it

exittest


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數據庫:

exit


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


5、MYSQL權限詳細分類:

全局管理權限: 

FILE: 在MySQL服務器上讀寫文件。 

PROCESS: 顯示或殺死屬於其它用戶的服務線程。 

RELOAD: 重載訪問控制表,刷新日誌等。 

SHUTDOWN: 關閉MySQL服務。

數據庫/數據表/數據列權限: 

ALTER: 修改已存在的數據表(例如增長/刪除列)和索引。 

CREATE: 創建新的數據庫或數據表。 

DELETE: 刪除表的記錄。 

DROP: 刪除數據表或數據庫。 

INDEX: 創建或刪除索引。 

INSERT: 增長表的記錄。 

SELECT: 顯示/搜索表的記錄。 

UPDATE: 修改表中已存在的記錄。

特別的權限: 

ALL: 容許作任何事(和root同樣)。 

USAGE: 只容許登陸--其它什麼也不容許作。

相關文章
相關標籤/搜索