5

如果一个表经常从前端写入,并且同一个表也必须经常搜索。两者都对性能至关重要。

例如,可搜索的 POST 表在其“内容”列上有全文索引?如果很少有用户在写帖子,它会转到同一个表,然后其他用户将同时在表上搜索关键字。

Will UPDATE/INSERT operation lock SELECT queries in above case ?

数据库 - MySQL

4

1 回答 1

12

这取决于表的存储引擎

InnoDB

InnoDB 支持MVCC4 个事务隔离级别

这允许插入、更新、删除和选择在 99.999% 的时间内和谐地生活

MyISAM

这是一个完全不同的竞争环境。默认情况下,每个 INSERT、UPDATE 和 DELETE 都会锁定整个表。INSERT 可以通过将concurrent_insert设置为 2 来禁用表锁定。(有关更多信息,请参阅并发插入)。否则,UPDATE 和 DELETE 仍然会在执行全表锁时造成严重破坏。

于 2013-03-26T13:07:42.950 回答