比较数据库及其锁

时间:2011-02-28 18:02:04

标签: mysql database postgresql b-tree locks

我正在进行繁重的事务处理,并希望获得有关如何在当前数据库中实现锁的信息。在零预算下工作我的选择仅限于mysql 5.5和postgres 9.0。

是否有比较锁的网站?

从文献中我知道你可以拥有只读和读写锁,并且处理锁的好方法是阻止数据的路径。这意味着阻止部分btree。但我找不到这些数据库如何完成工作的具体细节。

非常感谢。

3 个答案:

答案 0 :(得分:2)

以下是PostgreSQL的概述

http://www.postgresql.org/docs/current/static/explicit-locking.html
http://www.postgresql.org/docs/current/static/locking-indexes.html

不确定你对“只读锁”是什么意思,但是在PostgreSQL中,“锁定”表被读取的唯一方法是使用ACCESS EXCLUSIVE模式手动锁定它,这不是普通DML语句所发生的事情。只有DDL语句(例如ALTER TABLE)才能实现这一点。

答案 1 :(得分:0)

也许你会发现这本书很有用:Microsoft SQL Server 2005内部:存储引擎。阅读章节“日志记录和恢复”以及“锁定和并发”。本书中的许多信息都适用于当今的许多数据库系统。这本书真的很棒。

我建议你阅读有关并发控制的内容。您可以从Concurrency_control wiki开始,尤其是部分|数据库事务和ACID规则“

如果你想比较锁,首先我会读到交易中出现的问题以及事务隔离级别。

答案 2 :(得分:0)