1、检查请求地址,数据库用户账号密码,端口号是否正确
2、如果是连接远程数据库的话,检查远程服务器是否开启允许远程连接,端口号是否正常开启,防火墙配置是否正确。只能一项项详细排查,测试。
解决办法:
首先远程连接进入服务器,在cmd中输入mysql -u root -p,然后回车,输入密码后回车进入mysql命令行。
输入use mysql
输入select user,password,host from user 可以看到host中只有localhost主机。我们需要将xxx.xxx.xxx.xxx也添加到这里才对。
添加方法如下:输入 grant all privileges on *.* to root@”xxx.xxx.xxx.xxx” identified by “密码”或者 GRANT ALL PRIVILEGES ON *.* TO ‘root’@’xxx.xxx.xxx.xxx’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION这相当于是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括远程访问权限。然后再输入 flush privileges
再次输入select user,password,host from user 可以看到host中已经有了新加的IP。
现在再次用Navicat for MySQl访问远程mysql数据库,已经能正常打开了。 问题解决。
如果还是连接不到,那不是 MySQL Server 绑定了本地地址,打开/etc/mysql/my.cnf,找到:bind-address = 127.0.0.1,去除 IP 地址绑定,把它改为:bind-address = 0.0.0.0。然后重启 MySQL Server:/etc/init.d/mysql restart
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)