另一个用户可以在多值插入中间插入吗?
我所说的多值插入是指:
https://mariadb.com/kb/en/mariadb/how-to-quickly-insert-data-into-mariadb/#multi-value-inserts
我询问的原因是为了确保多值插入的自动增量值是串行的,并且另一个插入不能在它们中间插入一些值。
发布于 2017-08-20 19:16:39
和另一个insert不能在它们中间插入一些值
没有涉及到表锁,所以你不能假设这一点。
我询问的原因是要确保多值插入的自动增量值是串行的
干什么用?For what?它们只需要是唯一的,这是由数据库负责的。如果你依赖于值的顺序,那么看起来你的架构/设计在某种程度上是错误的。
发布于 2017-08-21 15:09:24
根据
https://mariadb.com/kb/en/mariadb/auto_increment-handling-in-xtradbinnodb/
对于XtraDB和InnoDB存储引擎:
innodb_autoinc_lock_mode服务器系统变量确定自动递增的锁定模式。
和
连续锁定模式
由innodb_autoinc_lock_mode=1设置,连续锁模式为所有大容量插入(如LOAD DATA或INSERT ...SELECT)直到语句结束。对于简单的插入,不持有表级锁。取而代之的是,使用了一个轻量级的互斥锁,它的伸缩性要好得多。这是默认设置。
https://stackoverflow.com/questions/45781510
复制相似问题