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

MYSQL错误#145的解决办法总结

Mysql有的时候因为掉电或者其他原因导致数据库损坏,错信息如下:

MySql: Can't open file: 'sdb_sessions.MYI'. (errno: 145)

For more information, see Help and Support Center at

我们可以使用mysql自带的mysqlcheck命令来快速修复所有的数据库或者特定的数据


如果你的数据库主机就你一个人用,并且你还能控制的话,建议你用Mysql自带的修复工具myisamchk.exe进行修复,操作如下:

修复前将mysql服务停止。
如果是Win主机,打开命令行方式,然后进入到mysql的/bin目录。
执行myisamchk -r  数据库所在路径*.MYI
如果是类Unix主机,直接使用myisamchk -r  数据库目录*.MYI


使用命令myisamchk修复数据库的MYI文件即可

 代码如下 复制代码

# /usr/local/mysql5/bin/myisamchk -c -r /bak/lib/mysql/yourealcn/biz_user.*

myisamchk: error: ‘/bak/lib/mysql/yourealcn/biz_user.frm’ is not a
MyISAM-table

———

myisamchk: error: ‘/bak/lib/mysql/yourealcn/biz_user.MYD’ is not a
MyISAM-table

———

- recovering (with sort) MyISAM-table ‘/bak/lib/mysql/yourealcn/biz_user.MYI’

Data records: 20414
- Fixing index 1
- Fixing index 2
- Fixing
index 3
- Fixing index 4


其实还有一个简单的方法打开你的myphpadmin,选中Can’t open file:后面同名的表,有个下拉菜单“选中项”,选择“修复”

1. 进入管理mysql的phpmyadmin
2. 在左则选中自己的数据库
3. 在右则勾选中错误信息中的那个’xxx’表
4.
滚动屏幕到下面,有个下拉菜单(With selected:),选择”Repair table”

修改之后,并没有发现有什么数据损失,连忙备份了一份数据库到邮件里面,备份还是很重要的

补充:数据库,mysql教程 
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,