宝塔连接云服务器mysql错误(2003, “can‘t connect to mysql server on ‘http://xxx.xx.xx.xx/‘ ([errno -2] name or s_千梦、流羽的博客-爱代码爱编程
报错信息:
解决过程:
- 在宝塔中下载 mysql 8.0数据库(当时已经下载了);
- 在 宝塔左侧数据库中 修改 root 密码,这里是 mysql的初始密码,软件商店中mysql配置文件里的密码没用,我也不知道为什么;
- 登录云服务器,测试是否可以连接 mysql:
mysql -uroot -p # 也可以显示输入密码:mysql -uroot -p密码
Enter password: # 密码不会显示,但其实是已经输入了
出现上面的提示就是成功了,如果失败了可以多尝试几次 root 密码或配置中的密码,重启mysql。
- 开启远程连接:修改mysql的user表,host字段为指定 ip 即可。如果想任意主机都可以连接,可以使用%:
use mysql
update user set host = '%' where user = 'root';
select host, user from user;
确认已经修改了。
- 测试之后发现使用本地 navicat 还是连不上,mysql 日志中报错:
IP address '221.7.210.223' could not be resolved: Name or service not known
解决办法:
在软件商店中mysql的配置文件中的[mysqld]下添加一行:
skip-name-resolve
(禁用dns解析,但是,这样不能在mysql的授权表中使用主机名了,只能使用IP)
- 服务器地址不要写错了,我就因为这个搞了好半天。。
数据库连接远程服务器时,不能是http://xxx.xx.xx.xx/,只能是xxx.xx.xx.xx。当使用域名时,正常输入即可。
希望可以帮到大家,谢谢观看!