日期:2014-05-16 浏览次数:20764 次
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 的相关表中。