您的位置:首页 > 数据库 > MySQL

MySQL 设置远程访问

2013-02-25 11:13 190 查看
原文地址:/article/4183632.html

MySQL远程访问,也就是通过ip访问MySQL服务,MySQL对于安全的要求是非常严格的,需要授权。

1.本地访问

Sql代码


GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'admin' WITH GRANT OPTION;

FLUSH PRIVILEGES;

上述命令的意思是为admin用户授权,以localhost方式访问数据库,密码为admin,这是我们推荐的访问方式,不直接暴露IP,提高数据库服务器的安全性。

2.远程访问

如果数据库服务器与应用服务器物理层面分割,也就是不在同一台服务器的时候,我们需要通过ip方式访问,这个ip就是数据库服务器主机IP。

Sql代码


GRANT ALL PRIVILEGES ON *.* TO admin@X.Y.Z.W IDENTIFIED BY 'admin' WITH GRANT OPTION;

FLUSH PRIVILEGES;

当然,这里授予admin用户WITH GRANT OPTION权限,欠稳妥!如果一个用户从远程登录修改了数据库表结构等等,是非常有风险的!

通常不建议授予授予其他用户权限权力,即:

Sql代码


GRANT ALL PRIVILEGES ON *.* TO admin@X.Y.Z.W IDENTIFIED BY 'admin';

FLUSH PRIVILEGES;

3.任意访问

如果不限制ip访问,授权某个用户可以以任意ip访问该服务,可以这样写:

Sql代码


GRANT ALL PRIVILEGES ON *.* TO admin@'%' IDENTIFIED BY 'admin';

FLUSH PRIVILEGES;

注意单引号!

3.取消授权

当然,有授权,就一定有取消授权:

Sql代码


REVOKE ALL ON *.* FROM admin@X.Y.Z.W;

FLUSH PRIVILEGES;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: