- 2013-09-29国务院近日印发了上海自由贸易试验区总体方案,自贸区...
- 2013-09-29移动医疗大潮袭来,看着是肉 咬下去是骨头。
- 2013-09-28安卓阵营集体遭360洗劫,华为三星步步高悉数中枪
- 2013-09-28小米MIUI团队声明称应用商店内全线下架360产品
- 2013-09-25阿里巴巴与云存储应用酷盘的收购谈判行已结束,阿里巴...
- 2013-09-25苹果称其全新Touch ID指纹扫描安全系统可以“十分安全...
- 2013-09-24上海自贸区不设防火墙 脸谱和推特等解禁
- 2013-09-24Fairfax Financial计划收购黑莓:每股9美元 总价47亿美...
- 2013-09-24消息称苏宁洽购PPTV进入尾声 金额约为4亿美元
- 2013-09-238月25日凌晨,中国.CN域名解析出现大规模解析故障,攻击...
mysql表损坏及修复的办法
当服务器遇到意外重启等特殊情况时,数据库中的某个数据库的某个表可能会出现问题,在系统日志的应用程序错误日志里会反复提示表有错误需要修复。用phpmyadmin查看时,有问题的表也会显示"使用中"。这些表在information_schema的enginee字段里值为空。
可以用root登录后在information_schema里查找有问题的表名
select TABLE_SCHEMA as DB_DBNAME,TABLE_NAME from INFORMATION_SCHEMA.tables where engine is null;
可以通过事件查看器里是否有
应用程序日志--类型为"错误"--事件来源为"Mysql"的错误日志,大概内容为
xxxxx: Table '.xxxx' is marked as crashed and should be repaired
myisam
如果是myisam存储引擎的话,可以运行mysql的bin目录下的myisamchk来修复,使用方法
myisamchk -c -r mysql\data\dataname\tablename.myi
修复后可用phpmyadmin进去查看一下是否恢复正常
或者登录数据库,例如abc的test表有问题
use abc;
check table test; 如果有问题Msg_type里会有warning或error。没有问题的话这里为OK
repair table test; 修复test表
check table test; 再次检查确认是否修复成功
innodb
使用InnoDB存储引擎的表,在数据库目录中只有.frm文件,数据是保存在ibdata1文件中的。要还原这种数据库(假使要还原名为db的数据库),先到备份服务器中下载备份到本地,停止mysql服务。将本地的ibdata1文件重命名,将data目录下的db文件夹和ibdata1文件复制到本地mysql的data目录下,在开启mysql服务,就可以看到db这个数据库文件,在使用导入导出的办法将数据还原到目标数据库中。需要注意的是ibdata1文件不一定是在data目录下的,具体需要看mysql.ini中innodb_data_home_dir参数设置的是哪个目录,机一般是在data或是database目录下面。
注:本站部分信息可能源于互联网分享,如有侵权,请告知,我们将及时删除!
- 用户评论
- 相关文章
-
最新评论
-
1
使用IIS+Resin来配置J...
本文介绍使用IIS+Resin来配置JSP的运行环境... -
2
MYSQL的主要参数设置(...
MYSQL的主要参数设置(优化) -
3
Linux服务器安全小技巧...
Linux 服务器安全小技巧 -
4
批量修改计算机名
批量修改计算机名 -
5
Linux下安装apache
Linux下安装apache -
6
Windows日志NTFS错误
Windows日志NTFS错误