MySQL innodb 出错 lost connection

原装匪兵甲 无业  2008-01-30 08:50:55
我的数据库中的表都是innodb的,不知道什么原因,其中一张表crash了,每次查询这张表的数据,总是出现lost connection的错误,想把表drop掉都不行同样还是报lost connection错误,
请问这是什么原因?如何修复?如果不能修复,请问如何才能把表drop掉呢?
...全文
131 点赞 收藏 6
写回复
6 条回复
懒得去死 2008年08月01日
增大connect_timeout的值吧。
回复 点赞
trainee 2008年07月29日
你的情况,是因为表crash,使服务程序重启导致lost connection
你看一下服务器的LOG。

导致表crash的原因很多,比须看mysql/innodb文档对症下药.
比较彻底的做法是

先备份再重建
备份数据时,不要备份这张表,否则可能又crash
mysqldump --ingore-table=xxx

回复 点赞
ydage 2008年07月29日
查看错误日志(备份整个库),运行 repair table 表名
回复 点赞
wkernel 2008年07月28日
/etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
#wait_timeout=1 # 注意有没有这个,意思是连接在1秒钟内没有动作则断开。供你参考
回复 点赞
懒得去死 2008年01月30日
lost connection 错误是由于
max_allowed_packet变量设置了太小的值。

在MYSQL提示符下输入:set global max_allowed_packet=10M或者更大 。
这个不用重新启动MYSQL服务。
或者在配置文件里添加
[mysqld]
max_allowed_packet=10M

重新启动MYSQL服务
回复 点赞
yecheng_110 2008年01月30日
可以考虑先执行一遍修复表操作
查查mysqlcheck命令
回复 点赞
发动态
发帖子
MySQL
创建于2007-09-28

2.4w+

社区成员

5.5w+

社区内容

MySQL相关内容讨论专区
社区公告
暂无公告