CentOS LAMP環境配置好後,拒絕訪問遠程服務器

當LAMP環境配置好後,咱們在本機:192.168.0.130使用Navicat鏈接服務器:192.168.0.168的時候會出現遠程MySQL不容許訪問的錯誤,這是由於Mysql爲了安全性,在默認狀況下用戶只容許在本地登陸,咱們如今的狀況是在本機使用phpmyadmin或則是Navicat進行登陸、數據庫管理,那麼怎麼辦呢?咱們須要進行以下操做:php

1、若是是容許root用戶在任何地方進行遠程登陸,並具備全部庫任何操做權限,具體操做以下:
在本機先使用root用戶登陸mysql:
mysql -u root -p"youpassword"
進行受權操做:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
重載受權表:
FLUSH PRIVILEGES;
退出mysql數據庫:
exitmysql


2、若是隻容許root用戶在一個特定的IP進行遠程登陸,並具備全部庫任何操做權限,具體操做以下:
在本機先使用root用戶登陸mysql:
mysql -u root -p"youpassword"
進行受權操做:
GRANT ALL PRIVILEGES ON *.* TO root@"指定的ip" IDENTIFIED BY "youpassword" WITH GRANT OPTION;
重載受權表:
FLUSH PRIVILEGES;
退出mysql數據庫:
exitweb


3、假設只容許root用戶在一個特定的IP進行遠程登陸,並具備全部庫特定操做權限,具體操做以下:
在本機先使用root用戶登陸mysql:
mysql -u root -p"youpassword"
進行受權操做:
GRANT select,insert,update,delete ON *.* TO root@"特定的ip" IDENTIFIED BY "youpassword";
重載受權表:
FLUSH PRIVILEGES;
退出mysql數據庫:
exitsql


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@"指定ip" 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: 只容許登陸--其它什麼也不容許作。服務器

相關文章
相關標籤/搜索