mariadb故障问题总结
故障1:初次启动遇到的故障1
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、虚拟空间、营销软件、网站建设、宁城网站维护、网站推广。
[ERROR] InnoDB: auto-extending data file ./ibdata1 is of a different size 640 pages (rounded down to MB) than specified in the .cnf file: initial 768 pages, max 0 (relevant if non-zero) pages!
问题原因:
在初始化数据库时系统自动建立了ibdata1,ib_logfile0,ib_logfile1几个文件
在配置文件中由于配置了:innodb_data_file_path = ibdata1:10M;ibdata2:10M:autoextend,跟初始化时的ibdata1的大小不一致导致的;
默认的ibdata1大小为8M,而我在此配置的为10M,是导致问题的原因
解决方法:
在MySQL的data目录下,删除ibdata1,ib_logfile0,ib_logfile1;
在重新启动mysql,系统会根据配置再次生成ibdata文件
故障2:初次启动遇到的故障2
which: no socat in (/usr/sbin:/sbin:/usr//bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin) WSREP_SST: [ERROR] socat not found in path: /usr/sbin:/sbin:/usr//bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin (20170323 17:32:25.176)
问题原因:
在server.cnf中配置了wsrep_sst_auth="sst:86rt6y1adf@abc"
需要用到socat软件包;
解决方法:
#yum install epel-release -y (epel源可以提供socat程序包,其它yum没有socat程序包)
#yum install socat -y
安装后再次启动即可
故障3:有大量慢查询导致cpu服务飙升,从而导致服务器宕机
问题原因:当有一个慢查询阻塞时,后面所有的请求都会等待这个查询完成才会执行
解决办法:
如果只有少量慢查询,直接用kill 慢查询ID号,结束慢查询即可;例:mysql>kill 32232
如果有大量慢查询,只能关闭当前数据库服务;
当有大量的慢查询时,用/etc/init.d/mysql stop关闭时遇到的问题:
1.关闭特别慢,等了大概15分钟后,关闭失败,并且数据库无法登陆;
2.此时采用kill -9 PID号的方式进行强制关闭mysql进程
3.此时用/etc/init.d/mysql start的方式启动时,启动失败
4.再此用/etc/init.d/mysql start的启动一次,即可成功启动
临时解决办法:
1.找到可以正常使用的数据库
2.在前端的haproxy中,把不能正常访问的数据库移除;
3.等待出故障的数据恢复正常后,再从haproxy添加此主机;
新闻标题:mariadb故障问题总结
标题来源:http://cdiso.cn/article/gdgjhj.html