码迷,mamicode.com
首页 > 其他好文 > 详细

CentOS LAMP环境配置好后,拒绝访问远程服务器

时间:2015-09-07 08:25:04      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:

当LAMP环境配置好后,我们在本机:192.168.0.130使用Navicat连接服务器:192.168.0.168的时候会出现远程MySQL不允许访问的错误,这是因为Mysql为了安全性,在默认情况下用户只允许在本地登录,我们现在的情况是在本机使用phpmyadmin或则是Navicat进行登录、数据库管理,那么怎么办呢?我们需要进行如下操作:

一、如果是允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,具体操作如下:
在本机先使用root用户登录mysql:
mysql -u root -p"youpassword"
进行授权操作:
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘youpassword‘ WITH GRANT OPTION;
重载授权表:
FLUSH PRIVILEGES;
退出mysql数据库:
exit


二、如果只允许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数据库:
exit


三、假设只允许root用户在一个特定的IP进行远程登录,并具有所有库特定操作权限,具体操作如下:
在本机先使用root用户登录mysql:
mysql -u root -p"youpassword"
进行授权操作:
GRANT select,insert,update,delete ON *.* TO root@"特定的ip" IDENTIFIED BY "youpassword";
重载授权表:
FLUSH PRIVILEGES;
退出mysql数据库:
exit


四、如果需要删除用户授权,需要使用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

五、MYSQL权限详细分类:
全局管理权限:
FILE: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。
数据库/数据表/数据列权限:
ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
CREATE: 建立新的数据库或数据表。
DELETE: 删除表的记录。
DROP: 删除数据表或数据库。
INDEX: 建立或删除索引。
INSERT: 增加表的记录。
SELECT: 显示/搜索表的记录。
UPDATE: 修改表中已存在的记录。
特别的权限:
ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录--其它什么也不允许做。

 

CentOS LAMP环境配置好后,拒绝访问远程服务器

标签:

原文地址:http://my.oschina.net/u/2449274/blog/501853

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!