一、发现一堆的用户名是unauthenticateduser的用户在连接,错误如下:
[Warning] IP address'202.105.127.122' could not be resolved: Name or service not known
[Warning] /usr/local/mysql/bin/mysqld: Forcing close of thread 313036 user: '100msh_creater'
解决办法:在my.cnf中修改,[mysqld] 行下添加
skip-name-resolve
skip-external-locking
二、报错:'proxies_priv' entry '@ root@python1.100msh.com' ignored in--skip-name-resolve mode
解决办法:我的my.cnf设置的是skip_name_resolve,
我用rpm包安装完mysql后,进入user表,只保留了一个root账户,并把host改成%了,其余的root账户都让我删除了。
可是我的mysql.err启动时候,提示
111018 12:43:37 [Warning] 'proxies_priv' entry '@root@localhost.localdomain' ignored in --skip-name-resolve mode.
已经都没root@localhost.localdomain' 这个账户了,怎么还会提示这个呢。
数据库装完后,数据是从备份恢复过来的吧。备份的数据库之前所在的主机名是localhost.localdomain,现在是不是改了。这样的话,把这条记录删了就行了。
如有问题,把root用户重设一下,再flush privileges一下应该就行了
三、mysql内存使用很小,CPU飙升,说明有表没有建索引
解决办法:
1、root账号登录mysql,查询当前数据库连接数,命令为:showprocesslist;发现有大量“SELECT partner_no,mac_no,partner_id,sc_pid,mac_addr FROM `t_machine_sc_config` WHERE partner_no='05'”在执行。
2、通过分析该SQL查询未走索引descSELECT partner_no,mac_no,partner_id,sc_pid,mac_addr FROM`t_machine_sc_config` WHERE partner_no='05';
3、根据查询条件,将partner_no建立索引字段
4、索引建完后,切换到用户登录模式后,通过观察cpu负载正常。
5.mysql 表卡住了,那么需要把mysql进程kill 掉,尽量不要重启,因为mysql在写表重启表会坏