【发布时间】:2010-08-12 04:58:02
【问题描述】:
【问题讨论】:
标签: mysql locking table-locking
【问题讨论】:
标签: mysql locking table-locking
【讨论】:
行锁定比表级或页级锁定需要更多内存。
必须通过行锁定获得更多的锁,这会消耗更多的资源
来自http://www.devshed.com/c/a/MySQL/MySQL-Optimization-part-2/
行级锁定的优点:
行级锁定的缺点:
在以下情况下,表锁优于页级或行级锁:
UPDATE tbl_name SET column=value WHERE unique_key_col=key_value;
DELETE FROM tbl_name WHERE unique_key_col=key_value;
【讨论】:
row 表级锁更适合发生重大数据修改的大表。这让系统可以处理表上的单个锁,而不必处理大量锁(每行一个锁)。
RDBMS 在内部自动升级锁定级别。
【讨论】:
表锁定允许多个会话同时从表中读取数据
为了达到非常高的锁定速度,MySQL 使用了表锁定
“我认为行级锁定更好,因为”[您锁定的数据更少]。
第一个“更好”在此页面中定义不明确。似乎更好的意思是“更快”。
由于锁的争用,行级锁定(通常)不能更快。锁定大型结果集的每一行意味着与另一个大型结果集查询发生冲突和回滚的可能性非常大。
【讨论】:
一般来说,如果您需要锁定大量数据,那么大表上的 1 个锁比一大堆行级或页锁便宜
【讨论】: