10bet网址
MySQL 5.7参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 36.3 mb
PDF (A4)- 36.3 mb
手册页(TGZ)- 236.9 kb
手册页(邮政编码)- 348.5 kb
信息(Gzip)- 3.4 mb
信息(邮政编码)- 3.4 mb
本手册节选

8.11.3并发插入

MyISAM存储引擎支持并发插入,以减少给定表的读取器和写入器之间的争用MyISAM表在数据文件中没有孔(删除中间的行)插入语句以在表的末尾添加行选择语句从表中读取行。如果有多个插入语句,它们被排队并按顺序执行,与选择语句。结果并发插入可能不会立即可见。

concurrent_insert可以设置系统变量来修改并发插入处理。默认情况下,该变量被设置为汽车(或1)和并发插入按刚才描述的方式处理。如果concurrent_insert被设置为从来没有(或0),则禁用并发插入。如果变量被设置为总是(或2),即使表已经删除了行,也允许在表的末尾进行并发插入。的描述concurrent_insert系统变量。

如果使用二进制日志,则并发插入将转换为普通插入创建…选择插入……选择语句。这样做是为了确保在备份操作期间通过应用日志重新创建表的精确副本。看到第5.4.4节“二进制日志”.此外,对于这些语句,会在selected-from表上放置读锁,从而阻止对该表的插入。结果是,对该表的并发插入也必须等待。

加载数据,如果您指定并发与一个MyISAM表满足并发插入的条件(即中间不包含空闲块),则其他会话可以从该表中检索数据加载数据是执行。的使用并发选项影响性能加载数据位,即使没有其他会话同时使用该表。

如果您指定HIGH_PRIORITY时,它将覆盖——low-priority-updates选项,如果服务器是用该选项启动的。它还会导致不使用并发插入。

锁表,两者的区别阅读当地而且是,阅读当地允许不冲突插入语句(并发插入),以便在持有锁时执行。但是,如果您要在持有锁的同时使用服务器外部的进程操作数据库,则不能使用此操作。