日期:2014-05-16  浏览次数:20764 次

MySQL远程连接的简单设置

mysql默认是没有开启远程控制的,必须添加远程访问的用户。

如果是安装版的话,从mysql提供的控制台进入。
用 root用户登陆,然后:
grant all privileges on *.* to 创建的用户名 @"%" identified by "密码";
flush privileges;?? * 刷新刚才的内容*

格式: grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码";
??????????? @ 后面是访问mysql的客户端IP地址(或是主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)

同时也可以为现有的用户设置是否具有远程访问权限。如下:
use mysql;
update db set host = ''%'' where user = ''用户名''; (如果写成 host=localhost 那此用户就不具有远程访问权限)
FLUSH PRIVILEGES;

查看结果,执行:
?? use mysql;
?? select host,user,password from user;

+--------------+--------+---------------+
| Host???????? | User | Password |
+--------------+--------+-----------------+
| localhost |???????? |??????????????? |
| %??????????? | John | 123456?? |
| localhost | root |??????????????? |
+--------------+------ --+---------------+


总结:
???? 其实MySQL默认有两个数据库分别为 mysql 和 test 而MySQL用户的信息都放在数据库 mysql 的相关表中。