ignored in --skip-name-resolve mode

以前也看到过这个错误信息,不过今天想彻底的研究一下。
其实也不算错误,顶多就算是警告。查看错误日日志时,有如下信息:
110908 10:21:56 [Warning] 'user' entry 'root@server1‘ ignored in --skip-name-resolve mode.
110908 10:21:56 [Warning] 'user' entry '@server1' ignored in --skip-name-resolve mode.
网上查了下资料,才明白是这么回事:
skip-name-resolve 参数的目的是不再把域名解析成IP,这样可以加快数据库的反应时间。然而我们使用这个参数后,原来数据库中已经存在的域名就不能再被解析了。不妨先看看mysql库中相关的数据:

mysql> select user,host from user;
+------+------------------+
| user | host             |
+------+------------------+
| root | 127.0.0.1        |
|        | server1 |
| root | server1|
|        | localhost        |
| root | localhost        |
+------+------------------+

这里面的host列正好和错误日中中的那个warning相吻合。既然已经不能解析成IP了,也就是说里面的server1已经不再生效了。删除得了。
mysql> delete from user where host='server1';
Query OK, 2 rows affected (0.00 sec)

删除后,错误日志中则不再出现类似的警告信息。

添加新评论 »