MySQL innodb 出错 lost connection

原装匪兵甲 2008-01-30 08:50:55
我的数据库中的表都是innodb的,不知道什么原因,其中一张表crash了,每次查询这张表的数据,总是出现lost connection的错误,想把表drop掉都不行同样还是报lost connection错误,
请问这是什么原因?如何修复?如果不能修复,请问如何才能把表drop掉呢?
...全文
182 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
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 表名
汪岩的爸爸 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命令

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧