我一个MYSQL数据库,平均在线人数150人 13个小时锁表2113000 次
这样的问题是不是很严重啊。
请大家帮忙分析一下原因,还有解决方法,谢谢了!

解决方案 »

  1.   

    是有考虑这个想法,但现在程序所有的SQL语句都是自动提交的,innodb 在set_autocommit =0 时对数据库操作的效率
    比myisam逊色不少,如果改成innodb怕这个问题,同时也怕其他暂时没想到的问题出现。
    想请教各位,象我这样的流量锁表次数在多少,算是比较合理的。
      

  2.   

    你的锁是指lock table这个语句引起的吗?
      

  3.   

    不是的,我的SQL语句,是没有lock  table 的,
    是MYSQL myisam类型的表不支持事务而对表自动锁的。
    谢谢!
      

  4.   

    一般如果应用中大部分都是insert,updae,delete操作的话,采用innodb,select比较多的话,采用myisam
    13个小时200多w次的锁表,主要看你的应用了,也就是说平均40多次/秒的锁表,你的应用每秒有多少次更新操作呢?一次更新肯定会是一次锁表,并发连接的客户端如果同时读一个表的话,只有一次读锁表,根据你的应用自己可以评估一下,是否是异常;
      

  5.   

    彻底修改你的SQL语句!!!!