第7章 数据库设计概述 1、数据库设计的基本步骤: (1)需求分析 (2)概念结构设计 (3)逻辑结构设计 (4)物理结构设计 (5)数据库实施 (6)数据库运行和维护 2、需求分析的任务: 调查的重点是“数据”和“处理”,通过调查、收集与分析,获得用户对数据库的如下要求: (1)信息要求 (2)处 ...
分类:
数据库 时间:
2020-12-30 10:57:29
阅读次数:
0
两段锁协议(Two-Phase Locking――2PL) 两段锁协议规定所有的事务应遵守的规则: ① 在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁。 ② 在释放一个封锁之后,事务不再申请和获得其它任何封锁。 即事务的执行分为两个阶段: 第一阶段是获得封锁的阶段,称为扩展阶段。 第 ...
分类:
其他好文 时间:
2019-04-12 19:08:03
阅读次数:
419
0. 前言 对于加锁的处理,可以说就是数据库对于事务处理的精髓所在。本文简单分析了MySQL中InnoDB引擎的加锁机制。 1. 一次封锁or两段锁? 因为有大量的并发访问,为了预防死锁,一般应用中推荐使用一次封锁法,就是在方法的开始阶段,已经预先知道会用到哪些数据,然后全部锁住,在方法运行之后,再 ...
分类:
数据库 时间:
2018-06-30 11:03:06
阅读次数:
217
数据结构化 : 这是数据库系统与文件系统的本质区别。
数据的共享性高、冗余度低且易扩充 : 数据共享可以大大减少数据冗余, 节约存储空间。数据共享还能够避免数据之间的不相容性和不一致性。
数据的独立性...
分类:
数据库 时间:
2016-12-03 15:55:04
阅读次数:
326
基本的封锁类型有两种:排它锁(X锁)和共享锁(S锁).所谓X锁,是事务T对数据A加上X锁时,只允许事务T读取和修改数据A,...所谓S锁,是事务T对数据A加上S锁时,其他事务只能再对数据A加S锁,而不能加X锁,直到T释放A上的S锁。
若事务T对数据对象A加了S锁,则T就可以对A进行读取,但不能进行..
分类:
数据库 时间:
2016-09-24 13:49:36
阅读次数:
249
1.2PL2PL定义:1.所有的读写操作之前均需加锁;2.解锁操作后不允许再出现加锁操作;S锁:加S锁后其他事务可读,不可写,直至加锁事务结束;X锁:加X锁后其他事务均不可以读或写,直至事务结束;事务执行的过程分为两个阶段,一是获得封锁阶段,二是释放封锁阶段;2PL可能产生死..
分类:
数据库 时间:
2016-05-24 17:12:56
阅读次数:
179
一直以来对数据库的事务隔离机制的理解总是停留在表面,其内容也是看一遍忘一边。这两天决定从原理上理解它,整理成自己的知识。查阅资料的过程中发现好多零碎的概念如果串起来足够写一本书,所以在这里给自己梳理一个脉络,具体的内容参考引文或在网上搜一下。由于平时接触最多的是MySQL,所以文章中某些部分是MySQL特有的特性,请读者注意。
数据库并发操作会引发的问题:
多个事务同时访问数据库时...
分类:
数据库 时间:
2014-08-22 19:47:19
阅读次数:
373
数据库管理系统通过加锁和事务解决并发性和数据一致性问题锁方式共享锁排它锁粒度库锁表锁行锁协议两段锁协议
分类:
其他好文 时间:
2014-06-08 01:24:55
阅读次数:
177
1.可串行性
并行操作对并行事务的操作的调度是随机的,不同的调度可能产生不同的结果。在这些不同的调度中,肯定有些调度的结果是正确的,究竟哪些调度是正确的呢?
若每个事务的基本操作都串连在一起,没有其它事务的操作与之交叉执行,这样的调度称为串行调度,多个事务的的串行调度,其执行结果一定是正确的。但串行调度限制了系统并行性的发挥,而很多并行调度又不具有串行调度的结果,所以我们必须研究具有串...
分类:
其他好文 时间:
2014-05-15 02:28:23
阅读次数:
191