linux服务器的mysql加载innodb后出现频繁重启的解决办法
linux服务器的mysql加载innodb后出现频繁重启,在日志中可以看到在不停的recovery,解决办法目前只有重建所有数据库,相关操作如下:
在my.cnf添加innodb_force_recovery=3启动,这时innodb相关的所有表是只读状态
#导出mysql
cd /home/mysql
ls >/root/list.txt
mkdir /root/sql
#编辑/root/list.txt 查找删除mysql以及ibd等非数据库名相关的行
for i in `cat /root/list.txt`
do
echo $i
mysqldump -uroot -pigotowest263mysql $i >/root/sql/$i.sql
done
#重建mysql目录
service mysqld stop
cd /home
mv mysql mysql123
mkdir mysql
chown mysql.mysql mysql
cp -rfp mysql123/mysql mysql/
#在my.cnf删除innodb_force_recovery参数
service mysqld start
#创建数据库
for i in `cat /root/list.txt`
do
echo $i
mysql -uroot -pigotowest263mysql -e "create database $i;"
done
#导入数据,my.cnf中max_allowed_packet最好设置在20M以上。
for i in `cat /root/list.txt`
do
echo $i
mysql -uroot -pigotowest263mysql $i </root/sql/$i.sql
done
相关问题
下载此文章 (欢迎转载,请注明出处:http://www.xmxwl.net/help/member/20131022/13170.html)
- 下一篇:linux常用命令之服务器日期和时间
- 上一篇:linux服务器如何解压缩rar文件