并发控制是DBMS的关键技术,并发控制技术也称为同步机制,其实现通常依赖于底层的并发控制机制。操作系统提供了多种同步对象,如事件 Event、互斥锁 Mutex和条件变量 Cond、信号量Semaphore、读写锁 RWLock、自旋锁 Spinlock等。数据库管理系统自己实现封锁主要是考虑:
锁语义加强:OS只提供排它锁。为了提高并发度,数据库至少需要共享锁和排它锁,即读锁和写锁;...
分类:
数据库 时间:
2015-01-30 10:50:25
阅读次数:
276
基于mysqldump实现数据库的逻辑备份【备份类型】根据备份时,数据库服务器是否在线:冷备份:coldbackup,服务器要离线,意味着我们的读写操作都不可以进行了,但是服务器离线比较困难。温备份:warmbackup,全局施加共享锁,只可读,不可写的备份叫温备份热备份:hotbackup,..
分类:
数据库 时间:
2015-01-26 06:42:33
阅读次数:
369
排它锁又称为写锁((eXclusive lock,简记为X锁)),若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。它防止任何其它事务获取资源上的锁,直到在事务的末尾将资源上的原始锁释放为止。在更新操作(INSERT、UPDATE 或 ...
分类:
其他好文 时间:
2015-01-20 21:54:57
阅读次数:
208
1、锁机制 1)在处理并发读写时,通常使用一套锁系统来解决问题。锁系统由读锁(又称共享锁)和写锁(又称排他锁)组成。 2)每一种锁操作(如获得锁、检查锁是否已解除、释放锁),都会增加系统开销。锁策略就是在锁开销和数据安全之间寻求一种平衡。MySQL的每种存储引擎都可以实现独有的锁策略或锁粒度...
分类:
数据库 时间:
2015-01-19 22:16:16
阅读次数:
226
锁:用来共享资源控制并发访问的一种机制锁由Oracle自动管理,锁持续的时间等于被提交事务处理的时间单用户数据库不需要锁机制锁类型1.共享锁(shar locks)也称为读锁,s锁,共享数据,可以同时访问不允许修改。2.排他锁(Exclusive Lock)也称为写锁,X锁,该事物单独获得此资源,另...
分类:
数据库 时间:
2015-01-12 00:15:56
阅读次数:
190
1、描述
共享锁:全局同步分布式锁,同一时间两台机器只能有一台获得锁
2、参与类
InterProcessMutex
3、用法
3.1 创建 InterProcessMutex 实例
public InterProcessMutex(CuratorFramework client,
String path)
Para...
分类:
其他好文 时间:
2015-01-10 21:04:20
阅读次数:
374
一直对多线程有恐惧,在实现共享锁和排它锁之后,感觉好了很多。 共享锁 就是查询的时候,如果没有修改,可以支持多线程查询; 排它锁 就是修改的时候,锁定共享锁,停止查询,同时,锁定排它锁,只允许一个线程进行修改,修改完成后,再解开共享锁; 心路历程: 一开始的想法是,绝对不调用 ...
分类:
编程语言 时间:
2015-01-07 14:40:57
阅读次数:
512
1 锁的独占与共享
java并发包提供的加锁模式分为独占锁和共享锁,独占锁模式下,每次只能有一个线程能持有锁,ReentrantLock就是以独占方式实现的互斥锁。共享锁,则允许多个线程同时获取锁,并发访问 共享资源,如:ReadWriteLock。AQS的内部类Node定义了两个常量SHARED和EXCLUSIVE,他们分别标识 AQS队列中等待线程的锁获取模式。
很显...
分类:
编程语言 时间:
2014-12-31 14:40:25
阅读次数:
232
共享锁(S锁):如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务职能读取数据,不能修改数据。排他锁(X锁):如果事务T对数据A加上排他锁后,则其他事务不能在对A加任何类型的封锁。获准排他锁的事务既能读取数据,也能修改数据。数据库死锁的原因:若干事务相互等待...
分类:
其他好文 时间:
2014-12-17 12:33:31
阅读次数:
132
共享锁(S锁)又称读锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S 锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。排他锁(X锁)又称写锁。若事务T对数据对象A加上X锁,事务T可以读A也可以修改A,...
分类:
其他好文 时间:
2014-12-08 21:02:58
阅读次数:
209