开发者社区 问答 正文

数据表锁死

最近ecs网站老是出现不能正常打开的情况,show processlist 查看发现有 很多条Waiting for table level lock 状态的sql语句。请大侠指教这种表级锁死的情况如何去避免,如何解决。
是需要对表进行优化,还是需要多数据库的参数进行优化。

展开
收起
u-t-t 2015-03-03 09:51:53 4733 分享 版权
2 条回答
写回答
取消 提交回答
  • RDS DBA
    应该是使用到了myisam存储引擎吧?

    -------------------------

    myisam存储引擎是表级别的锁,可以将该表转换为innodb存储引擎;
    alter table xxx engine=innodb;

    -------------------------

    myisam存储引擎,虽然在写入速度上有一定的优势,但是隐患也较多,容易出现索引损坏,在表变得非常大后修复起来极为困难,同时表级锁,查询堵塞更新也是非常麻烦的,建议使用innodb引擎替换掉myisam引擎

    2015-03-05 14:05:17
    赞同 展开评论
  • Re数据表锁死
    咋都没有冒泡的
    有大侠来指教一下
    2015-03-03 11:42:07
    赞同 展开评论