上篇讲了如何安装Mysql server,这篇讲下在使用Client工具连接Mysql Server出现的问题。Client不重要,反正都是工具。
错误一:
安装启动完Mysql服务后,使用命令行的方式去操作数据库当然是没有问题的。但是使用navicat等工具去连接的时候就会报错:Host ‘xxx.xxx.xx.xx’ is not allowed to connect to this MySQL server。
这个报错的原因在于本地IP(xxx.xxx.xx.xx)没有访问远程数据库的权限。于是下面开启本地IP(xxx.xxx.xx.xx)对远程mysql数据库的访问权限。
1 | mysql -u root -p |
输入密码登录进去,然后输入1
use mysql
查询user表中的信息及权限。1
select * from user;
其实你只看user,host就可以了。
下面赋予权限给我当前Navicat工具所在的IP地址xxx.xxx.xx.xx。1
grant all privileges on *.* to root@”xxx.xxx.xx.xx” identified by “your passwd”;
或者1
grant all privileges on *.* to root@”xxx.xxx.xx.xx” identified by “your passwd” with grant option;
以上.表示所有权限,包括远程访问权限。
如果好多机器都在使用,那把xxx.xxx.xx.xx改为%即可,此时%代表所有IP。
添加完毕,再次查询就可以看到自己的ip了。1
select user,host from user
最后使用Navicat工具再次连接数据库,就可以成功连接了。
错误二:
如果还是连接不到,那是不是MySQL Server绑定了本地地址,打开 /etc/my.cnf,不同版本my.cnf的位置可能不同,有些在/etc/mysql/my.cnf,
找到:bind-address = 127.0.0.1
去除 IP 地址绑定,把它改为:bind-address = 0.0.0.0
然后重启MySQL Server,再次连接。
错误三:
mysqld数据库服务没有启动这个错误就不说了。
防火墙开启了也会造成无法访问,此时防火墙需要允许3306端口连接。
原创不易,转载请注明出处。
加油!Coding For Dream!!
I never feared death or dying, I only fear never trying. –Fast & Furious