系统管理Lesson 10. Managing Data Concurrency
系统管理Lesson 10. Managing Data Concurrency
- 1. 请对 Oracle 数据库锁机制做一个完整的说明。 10-4
- 2. 事务在获取排他的行锁的同时,为什么要同时获取一个共享的表锁? 10-5
- 3. 当锁冲突发生时,如何解决,请给出相应的 SQL 命令。 10-3
- 4. 死锁是如何发生的,如何解决? 10-14
- 5. Oracle 数据库的行锁,本质上是对数据块的锁定,这个说法对不对?
- 6. 其他:
1. 请对 Oracle 数据库锁机制做一个完整的说明。 10-4
锁:
可以防止多个会话同时更改同一数据
是在指定语句的最低可能级别自动获取(行、块、表)(对象、数据库、方案)
锁机制:
(提供)高级数据并发处理(能力):
- 执行插入、更新和删除时用行级锁
- 查询不需要任何锁
自动队列管理
在事务处理结束(使用 COMMIT 或 ROLLBACK 操作)之前会一直保持锁定
2. 事务在获取排他的行锁的同时,为什么要同时获取一个共享的表锁? 10-5
row share、row exclusive、share、share row exclusive、exclusive
防止用户在修改表行数据的同时,其他管理员删除删除表
(修改数据库时,将数据从块中读取到内存,修改完后提交,由数据库写进程写入到数据文件中)
3. 当锁冲突发生时,如何解决,请给出相应的 SQL 命令。 10-3
第一步 找出 Session ID(会话 ID)
SELECT sid, serial#, username FROM v$sessionWHERE sid IN (SELECT blocking_session FROM v$session);
v$session 当前会话
blocking_session 凡是持有锁的会话
第二步 解决锁冲突
ALTER SYSTEM KILL SESSION 'SID,SERIAL#' IMMEDIATE;
A. 持有锁的会话提交或者回退(释放掉)
B. 终止持有锁的会话(紧急情况下)
4. 死锁是如何发生的,如何解决? 10-14
事务T1在等待T2,而T2又在等待T1,两个事务永远不能结束
两个或更多会话等待已被其中另一个会话锁定的数据
ORA-00060
Deadlock detectd while waiting for resource
解决:
完全自动、杀死其中一个事务
5. Oracle 数据库的行锁,本质上是对数据块的锁定,这个说法对不对?
不对
关系型表格数据在块内部一行一行存储的,行片段(Row piece)
6. 其他:
ABE
TM 锁(表级锁)
TX 锁(事务锁或行级锁)
封锁类型:
排他锁(exclusive lock,即X锁)(写锁) 只允许事务T读取和修改数据对象A,其他事务都不能在对数据对象A
共享锁(share lock,即S锁) (读锁) 事务T可以读数据对象A但不能修改A,其他事务只能再对A加S锁,而不能加S锁
数据库锁机制
oracle-数据库的各种-锁-详解
系统管理Lesson 10. Managing Data Concurrency相关推荐
- 系统管理Lesson 09: Managing Undo Data
系统管理Lesson 09: Managing Undo Data 1. 什么是还原数据,还原数据有什么用途? 9-3 2. 还原数据是如何存储的? 9-6 3. 还原数据的状态有几种,请详细加以描述 ...
- 系统管理Lesson 04. Managing the Database Instance
系统管理Lesson 04. Managing the Database Instance 1. 服务器参数文件和文本参数文件的区别在哪?参数文件保存在哪个目录? 4-3 2. 请说明 CONTROL ...
- 系统管理Lesson 07. Managing Database Storage Structures
系统管理Lesson 07. Managing Database Storage Structures 1. 块内部是如何保存关系型表格数据的? 7-3 2. 表空间的类型有几种?分别说明各自的用途. ...
- 系统管理Lesson 18.Managing Performance
系统管理Lesson 18.Managing Performance 1.Oracle数据库的性能优化过程一般包含哪几种活动? 18-5 2.性能规划阶段主要涉及到哪些选项? 18-6 3.实例优化过 ...
- 系统管理Lesson 14. Performing Database Backups
系统管理Lesson 14. Performing Database Backups 1. 请对 RMAN 所能实现的功能做一个详细的说明? 14-3 2. Oracle 数据库支持服务器管理的备份和 ...
- 备份恢复Lesson 10. Restore and Recovery Concepts
备份恢复Lesson 10. Restore and Recovery Concepts 1. 请解释 RESTORE 和 RECOVER 这两个 RMAN 命令的具体使用? 10-6 10-7 2. ...
- 新概念英语(第四册,新版)学习(原文及全文翻译)——Lesson 10 - Silicon Valley(硅谷)
注:这里只列出旧版中未包含的文章. Lesson 10(New Version) - Silicon Valley Technology trends may push Silicon Valley ...
- Quartz_2.2.X学习系列十:Tutorials - Lesson 10: Configuration, Resource Usage and SchedulerFactory
第10课小结: 在Quartz完成其工作之前需要配置的主要组件是: • ThreadPool • JobStore • DataSources (if necessary) • The Schedul ...
- 【Linux系统管理】10 Shell 编程进阶篇
六 Shell 编程 6.1 正则表达式 6.1.1 概述 还记得我们在上一章说过正则表达式和通配符的区别(正则表达式用来在文件中匹配符合条件的字符串,通配符用来匹配符合条件的文件名)吗?其实这种区别 ...
最新文章
- 机房为什么要设计冷热通道,设计原则及如何施工?
- Javascript在页面加载时的执行顺序(转载)
- 选考技术考计算机二级,计算机二级选考什么最简单啊```
- jq使用教程09_ 教程集合帖-伙伴们贡献,不断更新(4.17)
- PC机中各类存储器的逻辑连接情况
- redhat6安装git出现的问题
- 图像渲染测试软件,3D渲染参数(测试图及光子图)
- 铺铜需要把agnd和dgnd分开_电路中的AGND 和DGND怎么处理
- 开源社区人们总说的LGTM是什么意思?
- ictclas分词系统 java_1-Ictclas50分词系统ForJava
- 超简单集成HMS Scan Kit扫码SDK,轻松实现扫码购
- 疫情过后,这8个专业最有前景,快看看有你的专业吗?
- 【深度探讨】数据存储进化论,区块链才是未来
- 支持复制粘贴word图片的KindEditor编辑器
- 中级计算机知识点,计算机操作员中级基础知识教程解析.doc
- 基于MATLAB图像处理的硬币个数识别系统
- 设计一款可视化记录摩尔斯电码解码器,可以通过音频识别不同速度的摩尔斯电码
- win7 64 位机器使用DOSBox出现illegal command:debug原因分析
- Jave-Date(DateUtil)
- MySQL连接配置文件密码加密以及解密