mysql连接错误:Cannot get hostname for your address
2016-11-10 10:54
441 查看
问题
环境:win7 + 64Bit + 本地mysql5.6
问题:navicat连接本地mysql数据库,提示“Cannot get hostname for your address”,但是连接其他远程mysql均没有问题,排除navicat客户端的问题。
试验:将localhost修改为本地ip:127.0.0.1,不起作用。
解决方案
方案一:
修改mysql安装目录下的配置文件my.ini或者my-default.ini的节点[mysqld]: (例如:C:\Program Files\MySQL\MySQL Server 5.6\my.ini)
[mysqld]
[b]skip-name-resolve[/b]
方案二:
修改mysql服务器上的host文件,新增client的ip和hostname,如下所示:
xxx.xxx.xxx.xxx testhostname
方案三:
修改本地sql服务的登录用户为本地系统账户,如下所示:
总结
1.最实用最方便的是方案一,但是有时候方案一并不能起作用,比如我解决本地mysql报错方式用的是:方案一和方案三。单纯一种都不可以实现。
2.方案二是最笨的一种方式,但是比较死板,每次都得新加一行ip和hostname的对应信息,所以不推荐使用。
环境:win7 + 64Bit + 本地mysql5.6
问题:navicat连接本地mysql数据库,提示“Cannot get hostname for your address”,但是连接其他远程mysql均没有问题,排除navicat客户端的问题。
试验:将localhost修改为本地ip:127.0.0.1,不起作用。
解决方案
方案一:
修改mysql安装目录下的配置文件my.ini或者my-default.ini的节点[mysqld]: (例如:C:\Program Files\MySQL\MySQL Server 5.6\my.ini)
[mysqld]
[b]skip-name-resolve[/b]
解释:
跳过DNS反向解析;mysql接收到连接请求后,获得的是客户端的ip,为了更好的匹配mysql.user里的权限记录(某些是用hostname定义的)。
如果mysql服务器设置了dns服务器,并且客户端ip在dns上并没有相应的hostname,那么这个过程很慢,导致连接等待。
添加skip-name-resolve以后就跳过这样一个过程。
跳过DNS反向解析;mysql接收到连接请求后,获得的是客户端的ip,为了更好的匹配mysql.user里的权限记录(某些是用hostname定义的)。
如果mysql服务器设置了dns服务器,并且客户端ip在dns上并没有相应的hostname,那么这个过程很慢,导致连接等待。
添加skip-name-resolve以后就跳过这样一个过程。
修改完毕之后,重启mysql服务。
方案二:
修改mysql服务器上的host文件,新增client的ip和hostname,如下所示:
xxx.xxx.xxx.xxx testhostname
方案三:
修改本地sql服务的登录用户为本地系统账户,如下所示:
总结
1.最实用最方便的是方案一,但是有时候方案一并不能起作用,比如我解决本地mysql报错方式用的是:方案一和方案三。单纯一种都不可以实现。
2.方案二是最笨的一种方式,但是比较死板,每次都得新加一行ip和hostname的对应信息,所以不推荐使用。
相关文章推荐
- MySql连接错误:Cannot get hostname for your address
- MySql 连接错误:Cannot get hostname for your address 事件 100
- MySQL连接错误“Cannot get hostname for your address”解决方案
- navicat 连接mysql 报1042错误 can't get hostname for your address
- Navicat连接Mysql报1042- Can't get hostname for your address错误的解决办法
- 01.MySql连接错误:Cannot get hostname for your address
- MySql连接错误:Can‘t get hostname for your address解决办法之小白篇
- mysql连接时报1024 cannot get hostname for your address
- Navicat连接mysql出现1042错误 Can’t get hostname for your address
- [Navicat] 连接Mysql错误 1042 Can't get hostname for your address
- MySQL数据库连接错误:Can't get hostname for your address
- 解决(针对Windows)MySQL:1042错误-Can't get hostname for your address
- MySQL错误1042-Can't get hostname for your address解决方法
- navicat连接mysql: 报错1042 cant get hostname for your address
- JDBC连接MySQL抛Can`t get host name for your address异常的处理
- Linux下mysql用sqlyog连接报1042 can not get hostname for your address的问题
- navicat连接MYSQL提示Can’t get hostname for your address
- MySQL错误1042-Can't get hostname for your address解决方法
- Mysql 访问,提示无法连接Can't get hostname for your address Error 1042
- 1042-Can't get hostname for your address , navicat无法连接mysql