【问题标题】:concurrent READ and WRITE on MySQL TableMySQL 表上的并发 READ 和 WRITE
【发布时间】:2013-03-26 21:57:12
【问题描述】:

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

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

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

数据库 - MySQL

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    这取决于表的存储引擎

    InnoDB

    InnoDB 支持MVCC4 Transaction Isolation Levels

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

    MyISAM

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

    【讨论】:

    • 感谢@RolandoMySQLDBA,我的大部分表都是 InnoDB。因此,我相信出于所有实际目的,我将根据您的解释同时进行 READ/WRITES。 MyISAM 中有一个表,我相信我可以通过这种方式添加全文索引搜索。但是,我计划将 MySQL 升级到 5.6,它也支持 InnoDB 的 FTI
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-11
    • 1970-01-01
    相关资源
    最近更新 更多