mysql 加了 skip-name-resolve不能链接数据库问题的解决方法

时间:2022-08-28 00:05:15

mysql 加了 skip-name-resolve不能链接的问题,

要确认 MySql 是否采用过主机名的授权

在 MySql Server 的配置文件 My.ini 中,增加如下两行:

[mysqld]
skip-name-resolve

它将禁止 MySql Server 对外部连接进行 DNS 解析,使用这一选项可以消除 MySql 进行 DNS 解析的时间。
但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求。
如果开启 skip-name-resolve 选项,要确认 MySql 是否采用过主机名的授权,

在 mysql 中运行如下命令:

mysql> select user,host from mysql.user where host <> 'localhost' ;

一般会得到以“%”授权(也就是任何地址)的记录:

mysql 加了 skip-name-resolve不能链接数据库问题的解决方法

没有没有记录就说明不满足条件,需要修改一下将localhost替换为127.0.0.1

mysql 加了 skip-name-resolve不能链接数据库问题的解决方法

mysql 加了 skip-name-resolve不能链接的问题,修改后重启mysql就可以了

如果有host名是什么“DB1”“DB2”的,那么删除授权表中有 hostanme 的记录,然后重启mysqld。