终于把db恢复过来了

作者:墨鱼 发布于:2012-2-25 3:04 Saturday 分类:linux

今天重装了wjl的机器,之前直接备份的mysql数据目录,有些innodb的文件恢复不出来,innodb引擎发生错误拉不起,提示我使用innodb_force_recovery选项强制拉起。

 

拉起以后看了下数据都没问题,以为没事,结果网站还是打不开。一查还是有内部错误。

 

后来看了下说明,innodb_force_recovery启用时是不能进行写操作的,所以网站当然也就用不了了。

 

再后来一想,如果他是不让我写的话,意思是不是让我用mysqldump导一份出来呢?如果能导出来,回灌也就有希望了。后来一试,果然如此,呵呵~~

 

大概部署:

1、在innodb_force_recovery模式下把xbtit表dump出来(mysqldump --add-drop-table -p xbtit > bak_xbtit.txt)

2、备份my.cnf

3、停止mysql(service mysql stop)

4、卸载mysql(yum erase mysql-server)

5、删除数据目录(rm -rf /var/lib/mysql)

6、安装mysql(yum install mysql-server)

7、恢复my.cnf

8、删除innodb_force_recovery选项

9、拉起mysql

10、创建xbtit库

11、导入刚dump出来的数据(mysql -p xbtit < bak_xbtit.txt)

 

这样就完成了。

标签: linux mysql php dump innodb

评论(2) 引用(0) 浏览(94)

记录一些SQL

作者:墨鱼 发布于:2011-12-28 22:47 Wednesday 分类:linux

1、GROUP BY以后,获取第一条和最后一条

SELECT qq,SUBSTRING_INDEX(GROUP_CONCAT(groupid),',',1) FROM xxx GROUP BY qq;

SELECT qq,SUBSTRING_INDEX(GROUP_CONCAT(groupid),',',-1) FROM xxx GROUP BY qq;

关键就是SUBSTRING_INDEX和GROUP_CONCAT。配合CONCAT就可以做到第一、最后一条的联合统计。

标签: mysql group by substring_index group_concat

评论(0) 引用(0) 浏览(90)

Powered by emlog 粤ICP备11086334号 sitemap