优化MySQL开启skip-name-resolve参数时显示“ignoredin--skip-name-resolvemode.”Warning解决方法

参数用途:
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-resolvemode”参数后发现错误日志有

112020310:21:06[Warning]'user'entry'root@jimmyli'ignoredin--skip-name-resolvemode.
212020310:21:06[Warning]'user'entry'@jimmyli'ignoredin--skip-name-resolvemode.

只需去服务器里边把用户root@jimmyli和@jimmyli删除即可。
提示Warning信息:

113073911:12:22[Warning]'user'entry'root@localhost.localdomain'ignoredin--skip-name-resolvemode.
213073911:12:22[Warning]'user'entry'@localhost.localdomain'ignoredin--skip-name-resolvemode.


一般在优化MySQL配置参数时,添加“--skip-name-resolve”,然后在重新启动MYSQL时检查启动日志,发现有警告信息。如上。

原因分析:
“--skip-name-resolvemode”是禁用dns解析,避免网络DNS解析服务引发访问MYSQL的错误,一般应当启用。
启用“--skip-name-resolvemode”后,在MySQL的授权表中就不能使用主机名了,只能使用IP,出现此警告是由于mysql表中已经存在有localhost.localdomain帐号信息。

解决方法:
把Warning的账号删除就解决了。
MySQL命令行:

mysql>usemysql;

mysql>deletefromuserwhereHOST='localhost.localdomain';

QueryOK,2rowsaffected(0.00sec)

最后,重启MySQL,再看错误信息提示,日志发现警告已经没有啦。该方法是mysql启用skip-name-resolve模式时出现Warning的处理办法。

体验下51ctobbs里的新功能“代码高亮功能上线,“亮”出你的精彩吧~”,两个字“不错”!

[end]