优化MySQL开启skip-name-resolve参数时显示“ignored in --skip-name-resolve mode.”Warning解决方法
转自:http://blog.csdn.net/yiluoak_47/article/details/53381282
参数用途:
skip-name-resolve #禁止MySQL对外部连接进行DNS解析skip-grant-tables
添加–skip-name-resolve方法:
[Mysqld] …… skip-name-resolve ……
修改配置文件添加并需要重启。
参数优化:
skip-name-resolve 参数的目的是不再进行反解析(ip不反解成域名),这样可以加快数据库的反应时间。
内部有DNS服务器,对各服务器的IP做了反向解析,但未对内网IP做反向解析,所以使用skip-name-resolve以后用内网地址向mysqlslap请求响应快了一半。
添加“–skip-name-resolve mode”参数后发现错误日志有
120203 10:21:06 [Warning] 'user' entry 'root@jimmyli\' ignored in --skip-name-resolve mode. 120203 10:21:06 [Warning] 'user' entry '@jimmyli\' ignored in --skip-name-resolve mode.
只需去服务器里边把用户root@jimmyli和@jimmyli删除即可。
提示Warning信息:
130739 11:12:22 [Warning] 'user' entry 'root@localhost.localdomain\' ignored in --skip-name-resolve mode. 130739 11:12:22 [Warning] 'user' entry '@localhost.localdomain\' ignored in --skip-name-resolve mode.
一般在优化MySQL配置参数时,添加“–skip-name-resolve”,然后在重新启动MYSQL时检查启动日志,发现有警告信息。如上。
原因分析:
“–skip-name-resolve mode”是禁用dns解析,避免网络DNS解析服务引发访问MYSQL的错误,一般应当启用。
启用“–skip-name-resolve mode”后,在MySQL的授权表中就不能使用主机名了,只能使用IP ,出现此警告是由于mysql 表中已经存在有 localhost.localdomain 帐号信息。
解决方法:
把Warning的账号删除就解决了。
MySQL命令行:
mysql>use mysql; mysql> delete from user where HOST='localhost.localdomain'; Query OK, 2 rows affected (0.00 sec)
最后,重启MySQL,再看错误信息提示,日志发现警告已经没有啦。该方法是mysql启用skip-name-resolve模式时出现Warning的处理办法。