最近搭建在虚拟机中的mysql服务器出现了一个问题,本地链接localhost方式连接正常,但是使用ip地址连接则会报错:MySQL 1042, “Can’t get hostname for your address”
网上搜索了一下解决方案,在这里记录下来,希望能够给同样遇到这个问题的人提供思路。
解决方法
1.我解决这个问题的方法来自这篇帖子:
https://segmentfault.com/q/1010000002764951
将MySQL服务的登陆身份改为本地系统账户,亲测有效
修改完后需要重启一下服务,目前不知道原因和原理,但是解决了MySQL 1042, “Can’t get hostname for your address” 问题。
2.在网上还经常能搜索到的一个方法是修改my.ini文件
在[mysqld]节点下新增或修改如下两行行
skip-name-resolve #忽略主机名的方式访问
lower_case_table_names=1 #忽略数据库表名大小写 重启mysql服务,问题得到解决。
但是我遇到的问题用这种方法并没有其效果,如果使用上一种方法没有用可以试一下这种方法。