一尘不染

MySQL如何处理并发插入?

mysql

我知道MySQL中并发SELECT和INSERT存在一个问题。但是,我的问题是,如果我与MySQL建立两个连接并继续使用这两个连接来加载数据,MySQL是同时获取数据还是在加载另一个之前等待一个完成?

我想知道两种情况下MySQL的行为。就像当我尝试在打开单独的连接时尝试同时在同一张表或不同表中加载数据时一样。


阅读 226

收藏
2020-05-17

共1个答案

一尘不染

如果要创建与数据库的新连接并从两个链接执行插入,那么从数据库的角度来看, 它将仍然是顺序的

的文档并发插入
MySQL的文档页面上说:

如果有多个INSERT语句,它们将与SELECT语句同时排队并按顺序执行。

请注意,无法控制两个 并发插入 的顺序。并发的顺序受许多不同因素的影响。为了确保顺序,默认情况下,您将不得不牺牲并发性。

2020-05-17