千家信息网

mysql启用skip-name-resolve模式时出现Warning怎么解决

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,本篇内容介绍了"mysql启用skip-name-resolve模式时出现Warning怎么解决"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这
千家信息网最后更新 2024年09月21日mysql启用skip-name-resolve模式时出现Warning怎么解决

本篇内容介绍了"mysql启用skip-name-resolve模式时出现Warning怎么解决"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

查看mysql告警日志,发现两个警告,如下红体字
[root@S243 ~]# tail -f /mysql/datadir/S243.err
2017-02-15 08:59:57 23433 [Warning] 'user' entry 'root@s243' ignored in --skip-name-resolve mode.
2017-02-15 08:59:57 23433 [Warning] 'proxies_priv' entry '@ root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:00:00 23433 [Warning] 'user' entry 'root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:00:00 23433 [Warning] 'proxies_priv' entry '@ root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:22:58 23433 [Warning] 'user' entry 'root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:22:58 23433 [Warning] 'proxies_priv' entry '@ root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:23:03 23433 [Warning] 'user' entry 'root@s243' ignored in --skip-name-resolve mode.
2017-02-15 09:23:03 23433 [Warning] 'proxies_priv' entry '@ root@s243' ignored in --skip-name-resolve mode.
网上搜到一篇文章。。。。。。,验证确实解决了问题,于是粘过来做个记录。

http://www.justwinit.cn/post/7539/

[实践OK]mysql启用skip-name-resolve模式时出现Warning的处理办法

背景:skip-name-resolve 参数的目的是不再进行反解析(ip不反解成域名),这样可以加快数据库的反应时间。修改配置文件添加并需要重启:[mysqld] skip-name-resolve添加后发现错误日志有警告信息:

[root@jackxiang mysql]# vi my.cnf

skip-name-resolve

# 禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,

# 则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求

实践如下:

重启mysql,发现日志还有:

1)按提示作下查询,果然有一个空账户和root帐户的Host是jackxiang:

select * from user where Host="jackxiang"\G;

mysql> select Host,User,Password from user where Host="jackxiang";

+-----------+------+-----------------------------------------------------+

| Host | User | Password |

+-----------+------+-----------------------------------------------------+

| jackxiang | | |

| jackxiang |root | *2CD42BDFDF0EB0E*Z****3458EB72EE1F17F26F |

+-----------+------+------------------------------------------------------+

2)查下localhost,因为大都是限定本机连接,不让外面机器连接,确保安全:

mysql> select Host,User,Password from user where Host="localhost" limit 2;

+-----------+-----------------+-------------------------------------------+

| Host | User | Password |

+-----------+-----------------+-------------------------------------------+

| localhost | | |

| localhost | jack_mysql | *2CD42BDFDF0E***3458EB72EE1F17F26F |

+-----------+-----------------+-------------------------------------------+

3)把Host既是 jackxiang的,用户是空或root的Host修改为localhost:

mysql> update user set Host="localhost" where Host="jackxiang";

ERROR 1062 (23000): Duplicate entry 'localhost-' for key 'PRIMARY'

这样搞不行,得一个一个干掉,看有没有root同名的,查下:

mysql> select Host,User,Password from user where User="";

+-----------+------+----------+

| Host | User | Password |

+-----------+------+----------+

| localhost | | |

| jackxiang | | |

+-----------+------+----------+

mysql> delete from user where User="" and Password="";

Query OK, 2 rows affected (0.01 sec)

4)查下user为root的

mysql> select Host,User,Password from user where User="root";

+-----------+------+-------------------------------------------+

| Host | User | Password |

+-----------+------+-------------------------------------------+

| localhost | root | *2CD42BDFDF0EB0E1A7777777777EE1F17F26F |

| jackxiang | root | *2CD42BDFDF0EB0E1A7777777777EE1F17F26F |

| 127.0.0.1 | root | *2CD42BDFDF0EB0E1A7777777777EE1F17F26F |

| ::1 | root | *2CD42BDFDF0EB0E1A7777777777EE1F17F26F |

+-----------+------+-------------------------------------------+

5)留下localhost就足够了,其余删除掉:

mysql> delete from user where Host !="localhost" and User="root";

Query OK, 3 rows affected (0.00 sec)

6)restart mysql:


日志warning还有一个:

[Warning] 'proxies_priv' entry '@ root@jackxiang' ignored in --skip-name-resolve mode.

解决办法:

然后删除表mysql.proxies_priv中和cvs类似与具体域名有关的行,方法同上。

mysql> select Host,User,Proxied_host,Proxied_user,With_grant,Grantor,Timestamp from proxies_priv ;

+-----------+------+--------------+--------------+------------+---------+----------------+

| Host | User | Proxied_host | Proxied_user | With_grant | Grantor | Timestamp |

+-----------+------+--------------+--------------+------------+---------+----------------+

| localhost | root | | | 1 | | 2014-07-14 13:26:08 |

| jackxiang | root | | | 1 | | 2014-07-14 13:26:08 |

+-----------+------+--------------+--------------+------------+---------+----------------+

mysql> delete from proxies_priv where Host="jackxiang";

Query OK, 1 row affected (0.02 sec)

这下彻底清静了。

原来是当时安装mysql后,多次grant授权引起的,。

备注:

skip-name-resolve是禁用dns解析,避免网络DNS解析服务引发访问MYSQL的错误,一般应当启用。 启用后,在mysql的授权表中就不能使用主机名了,只能使用IP ,出现此警告是由于mysql 表中已经存在有 root@jackxiang 帐号信息。 我们把它删除就好了。 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怎么解决"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

日志 模式 时出 主机 信息 内容 办法 域名 时间 更多 知识 错误 处理 实践 有关 不行 实用 清静 学有所成 接下来 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 小学生网络安全征文450字 金融科技与互联网金融监管 lol显示正在连接服务器 互联网在国双科技公司工作好吗 家庭网络安全设置在哪 制定网络安全审查方法 浅析计算机网络安全及防范技术 康佳电视服务器异常网络连接正常 双电源服务器有一路电源断开 中国影响力人物数据库 陌陌显示网络安全验证失败 马化腾服务器在美国 华为网络技术工程师培训 把数据库配置到阿里云服务器 事业单位网络安全吗 数据库简化 昌吉市万项通网络技术有限公司 软件开发部职责及工作内容 蓝灯服务器 软件开发敏捷项目管理书籍推荐 vbsexcel数据库访问 dns是服务器不可用 核磁图怎么导出文本数据库 上网使用的网络安全技术 上传到服务器的文件打不开 跨年数据库连接失败的原因 t6不能登录服务器是否启动 服务器虚拟化运维方案 mysql 图片数据库中 数智网络安全
0