通过读取查询锁定了很长时间的mySql innoDB写查询

时间:2018-11-15 14:15:15

标签: mysql innodb table-locking

我有一个带表(带有自动增量主键)的mySql innoDB数据库。我有许多进程在表上执行读取操作。我还有其他(很少)进程需要在一个时间间隔(少于30秒)内写到同一张表中。写入过程有时会超时,因为它们发现表被读取操作锁定(超过30秒)。

是否有一种方法可以防止这种行为,并且即使其他进程正在读取,也允许写进程进行写操作?

1 个答案:

答案 0 :(得分:0)

这种方法的主要解决方法是加快读取速度。让我们一起看看其中的一些,以及SHOW CREATE TABLE。通常,它就像添加“复合”索引一样简单。

如果这是一个数据仓库应用程序,并且读取的内容是很大的“报告”,可以读取很多行并执行GROUP BY,那么build and maintain Summary Table(s)就是一个很好的解决方案。

相关问题