今天,在多个java进程同时访问同一数据库中的同一张表进行update操作时,出现了一条update语句要执行30s左右的时间才能完成的情况,经过排查,发现是程序中的update语句中的where条件中的字段没有建立索引,导致了全表锁,建立索引之后变为行级锁(通过explain可以看出),速度就快了很多很多......

update语句如图:

数据库经验之mysql索引

其中file_name与running_agent_id之前并没有建立索引......

好,开始建立索引:

数据库经验之mysql索引

附:

show index from table_name:查看表中的所有索引

drop INDEX index_name on table_name:删除表中名为index_name的索引

 

相关文章:

  • 2021-12-12
  • 2021-09-30
  • 2021-12-05
  • 2021-08-07
  • 2021-12-09
  • 2021-05-10
  • 2021-03-29
  • 2021-11-25
猜你喜欢
  • 2021-06-28
  • 2021-12-30
  • 2021-10-07
  • 2021-08-31
  • 2021-08-03
  • 2022-02-11
  • 2021-11-16
相关资源
相似解决方案