当前位置: > 数据库 > MySQL >

mysql日常运维常见问题

时间:2014-10-22 10:20来源:linux.it.net.cn 作者:it

问题一:1.远程访问不了或者访问慢的问题

表现:在使用远程连接数据库时偶尔会发生远程连接数据库很慢的问题
解决方法:如果你的mysql主机查询DNS很慢或是有很多客户端主机时会导致连接很慢,由于我们的开发机器是不能够连接外网的,所以DNS解析是不可能完成的,从而也就明白了为什么连接那么慢了。
修改/etc/resolv.conf将DNS服务器删除掉
修改/etc/mysql/my.cnf
[mysqld]下添加
skip-name-resolve就可以解决问题
同时,请注意在增加该配置参数后,mysql的授权表中的host字段就不能够使用域名而只能够使用 ip地址了,因为这是禁止了域名解析的结果

 

表现:机器不能远程访问
解决方法:出现远程访问不了的问题从两方面入手
1.数据库设置了禁止远程访问
#bind-address=127.0.0.1(去掉注释只能本机访问)
#skip-networking (去掉注释只能本机访问)
2.防火墙的问题
开放数据库端口

 

问题二:2.myisamchk修复表时报 error 28
表现:myisamchk修复表时报   disk is full writing ‘/tmp/SIcDnCMM’(Errcode:28).Waiting for someone to free space…
解决方法:非正常关闭,kill线程都有可能损坏myisam 表,myisamchck 这个工具主要是离线修复myisam表 所以在修复过程中最好是能停掉数据库另外本身myisamchck 这个工具与mysql是相对独立的一个工具,而在服务器上设置tmpdir这个参数 仅仅是对于排序而用到了临时表空间,为什么会提示tmp目录不足 是因为这个工具默认是使用的那个路径.重新指定myisam工具的工作目录

 

问题三:3.innodb数据文件损坏

表现:130412 17:03:43  InnoDB: Error: page 14178 log sequence number 29455369832
InnoDB: is in the future! Current system log sequence number 29455363853.
解决方法:
修改配置文件,添加:innodb_force_recovery = 4
启动数据库后备份数据文件,然后去掉该参数,利用备份文件恢复数据

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容