MySQL 用户访问授权

以前架 MySQL 服务器都是在本机上,没有考虑过用户授权的问题,直接使用 root 用户进行连接数据库。后来开发组内部共同使用一个 MySQL 数据库,问题出现了,每次都是数据库连接无法获得。非常奇怪,而且用户名和密码都是对的。

于是查找 MySQL 开发手册,对这个的解释是:root 用户仅能从本机访问。
查询一下用户表:
select host, user from mysql.user where user
='root';
+-----------+------+
| host      | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)
发现问题的原因之后,新建一个用户并授予访问权限。
grant all privileges on test.
* to newuser@'%'
     identified by security;
flush privileges;
授予 test 数据库的 所有表 的 所有访问权限 给 从任意客户端 登录的 newuser 用户。
查询一下用户表:
select host, user from mysql.user where user
='newuser';
+-----------+---------+
| host      | user    |
+-----------+---------+
| %         | newuser |
+-----------+---------+
1 row in set (0.00 sec)

对于 Windows 操作系统还需要 关闭防火墙 或者 将 MySQL 放到 防火墙 的例外列表中去才可以。
现在,从任意客户端都可以使用 newuser 用户名进行访问了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章