繁体   English   中英

MySQL的innodb锁

[英]mysql innodb lock

我正在开发将在多个计算机上运行的应用程序。 我想锁定mysql表,因此不会出现进程并发问题,例如一个进程正在编写而另一个进程正在同时读取。 或者更糟糕的是,这两个过程都会同时写入(更新)不同的值。 MySQL提供了锁,但是文档表明我们应该避免在InnoDB中使用锁。 在这里阅读 请提供一些建议,在这种情况下该怎么办。 感谢大家。

InnoDB是具有完全ACID支持的事务性存储引擎。 InnoDB的特性之一是它处理并发更新。 具体取决于隔离级别,但通常InnoDB不允许两个事务通过锁定行来修改同一行。 它不会锁定整个表,因此其他记录可以被其他事务修改。

如果将隔离级别设置为可serializable则应用程序将运行,因为根本没有并发性,但仍将允许一些并发性。

隔离级别越高,您拥有的并发性就越少,但是锁定表仍然有更多的并发性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM