在MySQL表上并发READ和WRITE

时间:2013-03-26 12:51:50

标签: mysql sql

如果经常从前端写入表,并且同样的表也必须经常搜索。两者都是性能关键。

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

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

数据库 - MySQL

1 个答案:

答案 0 :(得分:9)

这取决于表的存储引擎

InnoDB

InnoDB支持MVCC4 Transaction Isolation Levels

这允许INSERT,UPDATE,DELETE和SELECTs和谐地生活99.999%的时间

MyISAM

这是一个完全不同的竞技场。默认情况下,每个INSERT,UPDATE和DELETE都会锁定整个表。通过将concurrent_insert设置为2,INSERT可以禁用表锁定。(有关详细信息,请参阅Concurrent Inserts)。否则,UPDATE和DELETE仍然会造成一些破坏性的全表锁。