MySQL DELAYED vs LOW_PRIORITY - 有什么区别?

时间:2018-01-10 20:54:45

标签: mysql innodb

之间有什么区别:

INSERT DELAYED INTO tableA SET val='1'

INSERT LOW_PRIORITY INTO tableA SET val='1'

支持official MySQL doc

并且有一个dedicated section to INSERT DELAYED

本节说明计划在将来的版本中删除DELAYED。

  

在MySQL 5.6中不推荐使用DELAYED插入和替换。在MySQL中   5.7,不支持DELAYED。服务器识别但忽略DELAYED关键字,将插入处理为非延迟插入,以及   生成ER_WARN_LEGACY_SYNTAX_CONVERTED警告(“INSERT DELAYED   不再受支持。该声明已转换为INSERT“)。该   DELAYED关键字计划在将来的版本中删除。

除此之外,我想知道是否有任何区别?

另外,我不得不说我在MySQL中使用InnoDB,而不是MyISAM。 DELAYED INSERT实际上有什么优势吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

https://dev.mysql.com/doc/refman/5.7/en/insert.html说:

  

LOW_PRIORITY仅影响仅使用表级锁定的存储引擎(例如MyISAM,MEMORY和MERGE)。

由于您使用的是InnoDB,LOW_PRIORITY无效。无论如何它都没有任何好处,因为在InnoDB中,作者不会阻止读者,反之亦然。