首页 > 代码库 > 优化MySQL开启skip-name-resolve参数时

优化MySQL开启skip-name-resolve参数时

参数用途:
skip-name-resolve #禁止MySQL对外部连接进行DNS解析skip-grant-tables 

添加--skip-name-resolve方法:
1 [Mysqld]
2  ……
3 skip-name-resolve
4 ……
修改配置文件添加并需要重启。

参数优化:
skip-name-resolve 参数的目的是不再进行反解析(ip不反解成域名),这样可以加快数据库的反应时间。
内部有DNS服务器,对各服务器的IP做了反向解析,但未对内网IP做反向解析,所以使用skip-name-resolve以后用内网地址向mysqlslap请求响应快了一半。 

添加“--skip-name-resolve mode”参数后发现错误日志有
1 120203 10:21:06 [Warning]‘user‘entry‘root@jimmyli‘ignoredin--skip-name-resolve mode.
2 120203 10:21:06 [Warning]‘user‘entry‘@jimmyli‘ignoredin--skip-name-resolve mode.
只需去服务器里边把用户root@jimmyli和@jimmyli删除即可。 
提示Warning信息:
1 130739 11:12:22 [Warning]‘user‘entry‘root@localhost.localdomain‘ignoredin--skip-name-resolve mode.
2 130739 11:12:22 [Warning]‘user‘entry‘@localhost.localdomain‘ignoredin--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命令行:
1 mysql>use mysql;
2   
3 mysql>deletefromuserwhereHOST=‘localhost.localdomain‘;
4  
5 Query OK, 2rowsaffected (0.00 sec)
最后,重启MySQL,再看错误信息提示,日志发现警告已经没有啦。该方法是mysql启用skip-name-resolve模式时出现Warning的处理办法。 

优化MySQL开启skip-name-resolve参数时