mariadb行级读锁定

时间:2015-02-11 10:24:18

标签: mysql mariadb

任何mariadb后端是否支持行级读锁定?我的意思是:

我有一个可以在三到四台不同机器上运行的应用程序。机器数量是动态的,而不是固定地址。应用程序将执行以下两个查询:

SELECT col3 from table1 WHERE col1=X
<do some checking with the version>
UPDATE table1 SET col2 = somevalue, col3 = somevalue WHERE col1=X

现在,在第一个SELECT查询和第二个UPDATE查询之间,我不希望应用程序的任何实例甚至读取(不仅仅是WRITE)与col1 = X相对应的记录

是否有可能在mariadb中实现?

1 个答案:

答案 0 :(得分:5)

回答我的问题:

我们可以使用SELECT ... FOR UPDATE子句来锁定各个记录。此锁定将在事务提交/回滚时自动释放。有关更多信息,请访问:https://dev.mysql.com/doc/refman/5.6/en/innodb-locking-reads.html