首页>参考读物>计算机科学与技术>数据库

联动Oracle:设计思想、架构实现与AWR报告
作者 : 玉素甫·买买提
出版日期 : 2024-02-19
ISBN : 978-7-111-74416-0
定价 : 99.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 :
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

【为宏观掌握Oracle基础(第1~3章)】,介绍了进程管理、内存管理及存储等基础知识,并且讲解了常用Linux操作系统性能工具的使用及结果分析方法,旨在帮助读者了从宏观视角掌握Oracle数据库体系架构和进程组织方案。【微观理解Oracle原理(第4~8章)】,围绕Oracle内部运行原理展开讲解。首先,在Oracle数据结构的基础上讨论日志和回滚。其次,引入了排队论和排队系统中的概念,对比法讲解了Oracle的数据缓冲区高速缓存和共享池设计思想及运行原理。【串联Oracle运行流程(第9~11章)】,结合实践案例将从提交SQL至结果返回的整个过程串起来,首先总结归纳了Oracle算法和数据结构的重要知识点,打通了Oracle原理与数据结构之间的桥梁。其次,通过典型案例讲解AWR报告,让读者能够了解完整的Oracle诊断思路。再次,介绍了集群技术、Oracle RAC及其日志结构。然后,对Oracle多租户架构的演进过程及部分新特性进行了简要讨论及总结。

图书特色

一本面向初中级DBA的数据库系统理论和实践的学习指南,涵盖集中式数据库系统和Oracle RAC集群核心技术组件的基本概念、设计思想、实现方式,深度剖析其算法及AWR报告
资深Oracle OCM总结15年数据项目经验,结合Unix系统内核、进程、排队论、集群等,串联Oracle原理与技术体系,配合大量图例讲解,提供数据库管理及优化的实战技巧

上架指导

计算机\程序设计

封底文字

我和玉素甫·买买提相识于2010年,近十五秋,他在技术的道路上孜孜不倦,积跬步而终至千里。技术难在积累,写作贵在构思。本书的价值在于“串联”二字。我们往往通过碎片化的学习获得大量知识点,但这些知识点来自不同的技术域,如何将其串联起来,形成破解种种难题的长矛,则是技术人“突破”的关键。玉素甫找到了自己突破学习瓶颈的方法,并总结成书,这是对读者最大的价值。本书内容凝练、解读自具深度,如对数据段的三级位图块的介绍、SCN在SMON_SCN_TIME表中的记录……而AWR数据解读部分值得特别关注,因为AWR是一个串联各种知识的入口,使操作系统、网络等信息随同数据库信息一一呈现。开卷有益,祝每一位读者都能从作者十数年的积累中获得借鉴。
——盖国强 云和恩墨创始人,鲲鹏 MVP,《循序渐进Oracle》《深入解析Oracle》等图书作者

我与玉素甫·买买提相识多年,了解他对Oracle有极深造诣,实属难得。当前趋势下,Oracle仍是值得研究的对象,它的先进架构、开发原理及生态,一直被模仿,从未被超越。几十年来,Oracle在不断迭代中沉淀了非常多的优秀算法、理念与架构,而本书解读了Oracle最核心的算法、理念与内部原理,包括存储格式、Redo、Undo、并发控制、共享池等。无论读者从事运维还是数据库内核研发,本书都十分值得阅读与学习。虽本书所述原理较为深刻,需要认真研读,但由此能打开Oracle这个大宝藏,也是值得的。
——吕海波 数据库内核研究者,北京大学“开源软件开发基础及实践课程 PostgreSQL内核”校外导师,PostgreSQL ACED,Oracle 10g OCM,《Oracle内核技术揭密》作者

想要正确理解数据库系统原理,离不开对Unix/Linux操作系统基本概念、高并发架构设计思想、CPU和I/O模型、排队论、集群、性能测试曲线等的深入理解,更离不开对数据结构和算法等计算机基础的掌握。本书中,玉素甫·买买提结合多年的数据库运维经验,对Oracle数据库的设计与实现进行了体系化的研究和融合。除Oracle数据库外,阅读本书也能对其他数据库的快速学习和深入理解起到借鉴与参考作用。 
——李石君教授 武汉大学计算机学院大数据研究所所长、博士生导师

玉素甫·买买提是我多年来的好友,他的专研精神一直激励着我。多年来,我们一直致力于深入研究Oracle的各种技术,试图揭开其神秘面纱。在这本书中,玉素甫基于对Oracle的深刻理解,结合多年的实践经验,由点及面地阐述了Oracle各个部件是如何进行有机整合的,提供了高效、稳定的数据库系统实践方法。阅读此书后,读者将更加系统地认识数据库,也更容易进一步学习国产数据库的原理与操作。
——周亮 杭州代维科技有限公司CTO,Oracle ACED/OCM,《Oracle DBA实战攻略》作者

图书目录

第一章 ORACLE概貌及进程 10
1.1 宏观ORACLE概貌 10
1 1.1 串联Oracle知识的挑战 10
1 1.2 简介Unix体系结构 11
1.1.3 Oracle进程状态的转换 14
1.2 充分理解进程 15
1.2.1 何为进程? 15
1.2.2 进程的状态 17
1.2.3 进程切换 19
1.2.4 进程之间的通讯 19
1.3 ORACLE的进程组织方案 20
1.3.1 2N方案:一个数据库服务器进程对应一个用户进程 20
1.3.2 N+M方案:M个数据库服务器进程对应N个用户进程 22
1.4 ORACLE进程结构及分类 23
1.4.1 Oracle进程结构及分类 23
1.4.2 Oracle进程的启动顺序 28
1.4.3 进程、连接、会话的区别 28
1.6 本章参考文献 30
第二章 ORACLE内存结构 31
2.1 虚拟存储管理 31
2.1.1 OS虚拟内存结构 31
2.1.2 共享内存段的概念 32
2.1.3 共享内存段及其内核参数 33
2.1.4共享内存段查看 34
2.1.5 共享内存段与进程 35
2.1.6 内存交换及HugePgae 36
2.1.7 内存文件系统 36
2.2 ORACLE实例 36
2.2.1 数据库实例构成 37
2.2.2 ASM实例的构成 39
2.2.3 ASM与ASM参数文件 41
2.2.3 数据库实例与ASM实例的交互 42
2.3 LINUX性能分析工具 43
2.4 ORACLE常用视图及工具 48
第三章 ORACLE存储结构 57
3.1 存储体系结构 57
3.1.1 逻辑存储结构 58
3.1.2 段和表的区别 59
3.1.4 Rowid结构 61
3.1.3 数据块结构 63
3.1.3 索引结构及索引范围扫描 65
3.2 数据文件存储结构 66
3.2.1 数据文件物理存储结构 66
3.2.1 Oracle怎么读数据文件 68
3.3 重做日志文件存储结构 70
3.3.1 检查点 71
3.3.1 控制文件 73
3.4 ASM存储结构 75
3.4.1 ASM文件 75
3.4.2 ASM空间分配 77
3.4.3 ASM磁盘组与磁盘 80
3.5 ASM存储设备配置 82
3.5.1 ASM磁盘的发现 82
3.5.1 多路径简介 84
3.5.2 udev 简介及配置 85
3.5 本章参考文献 87
第四章 日志 88
4.1初识重做记录 88
4.1.1 为重做日志转储做准备 89
4.1.2 转储文件内容及构成 90
4.2 IMU与非IMU 92
4.2.1 非IMU的redo申请过程 93
4.2.2 IMU的redo申请过程 94
4.3 LGWR的工作 96
4.4 REDO相关等待事件 97
4.5 多LGWR进程 98
第五章 回滚 100
5.1 UNDO的来历及原理 100
5.1.1 UNDO的来历 100
5.1.2 UNDO的生成过程 101
5.1.3 数据块头 、回滚段头及回滚块之间的关系 106
5.2 读一致性 116
5.3 获取UNDO信息 116
5.3 UNDO的延伸--FLASHBAK DATABACE 120
第六章 排队论和并发控制 121
6.1 排队论和事务处理 121
6.1.1 排队论基本概念 121
6.1.2 事务的基本概念 124
6.1.3 事务流(Tranceaction follow) 126
6.2 响应时间曲线图和建模 127
6.2.1 响应时间曲线图 127
6.2.2 CPU子系统建模 128
6.2.3 IO子系统建模 129
6.3 并发控制和封锁(LUCK) 130
6.3.1 并发控制基本概念 130
6.3.2 封锁(Luck) 130
6.4 ORACLE 多粒度锁机制介绍 131
6.4.1 Oracle的TX锁(行级锁、事务锁) 131
6.4.2 TM锁(表级锁) 132
6.4.3 Oracle的TM锁(表级锁) 132
6.4.3 Oracle锁查询脚本 134
6.5 通过ASH确定阻塞会话 135
6.5 参考文献 136
第七章 数据缓冲区 137
7.1 数据缓冲区结构 137
7.1.1 working set 137
7.1.2 buffer_header 138
7.1.3 hash bucket & hash chain 139
7.2 并发控制及申请流程 141
7.2.1 CBC latch和pin 141
7.2.2 共享与独占 144
7.2.3 LRU队列 145
7.2.4 申请流程 148
7.2.5热链与热块 150
7.3 物理读和逻辑读 155
7.3.1 逻辑读 155
7.3.2 物理读 155
7.4 数据缓冲区的延伸—RAC 156
第八章 共享区 157
8.1 SHARED_POOL结构 157
8.1.1 subpool 157
8.1.2 free list & LRU 160
8.1.3 shared pool申请内存的流程 161
8.2 SQL解析及并发控制 164
8.2.1 SQL解析及cursor 164
8.2.2 Library cache lock/pin与Latch原理 166
8.2.3 cursor_sharing 169
8.2.4 v$latch,v$latch_childred统计 170
8.3 MUTEX 172
8.3.1 Mutex 172
8.3.1 Mutex解析 173
8.3.2 存储过程编译的案例 174
8.3.3 oradebug模拟mutex等待 176
8.4 共享区总结 176
8.4.1高效使用共享池 176
8.4.2共享区故障诊断思路 177
8.5 共享区的延伸—机器学习 179
第九章 串联ORACLE 180
9.1 SQL查询原理 180
9.1.1 SQL语句执行的简要过程 180
9.1.2 SQL查询基本实现算法 181
9.1.3 SQL查询执行顺序 183
9.1.4 10046事件和10053事件 187
9.2 串起SQL语句的整个过程 187
9.2.1 数据访问流程的分解 187
9.2.2 SQL语句的解析(Parse)阶段 187
9.2.3 SQL语句的执行(Execute)阶段 188
9.2.4 update/delete/insert流程的分解 192
9.3 ORACLE网络 195
9.3.1 Oracle网络链接基础 195
9.3.2 Oracle链接模式及配置 196
9.3.3 remote_listener 199
9.3.4 网络链接高级配置 200
9.4 故障诊断思路 201
9.4.1快速定位资源持有者 201
9.4.2 数据库性能类故障 202
9.4.3 数据库连接类故障 203
9.4.4 数据库HANG类故障 205
第十章 AWR数据的解读分析 208
10.1 AWR数据来源和操作 208
10.1.1调优工具简介与数据来源 208
10.1.2 AWR操作 209
10.2 AWR报告分解分析 211
10.2.1实例效率命中率(Instance Efficiency Percentages) 212
10.2.2 系统负载(Load Profile) 215
10.2.3 首要的5个等待事件(Top 5 wait events) 220
10.2.4等待接口和时间模型的整合 223
10.2.5 DB Time 228
10.2.6 操作系统统计指标 229
10.3 AWR中RAC指标的解读 233
10.4参考文件 234
第十一章 集群与多租户 235
11.1 ORACLE集群的演变 235
11.1.1 为什么需要并行计算? 235
11.1.2 Oracle10g RAC架构 237
11.1.3 Oracle11g RAC架构 238
11.1.4 Oracle12c RAC架构 239
11.1.5 Clusterware 磁盘文件 241
11.2 CLUSTERWARE启动顺序及进程日志 244
11.2.1 Clusterware 组成及启动顺序 244
11.2.2 Clusterware 进程 248
11.2.3 Clusterware 的日志 252
11.2.4 关闭和启动RAC集群 259
11.3 ORACLE 数据库RAC 263
11.3.1 RAC文件结构 263
11.3.2 CacheFusion的由来 264
11.3.2 RAC主要服务及进程 266
11.3.2 RAC多实例数据读写过程 269
11.4.1 RAC实例恢复 274
11.4 RAC的等待时间 274
.11.4.2 RAC的Global Cache等待时间 274
11.4 多租户 277
11.4.1 多租户概貌 277
11.4.2 多租户体系结构 278
11.4.3 多租户用户管理 280
11.4.4 容器数据库创建及管理 283
11.4.4 容器数据库启动与关闭 287
11.4.5 容器数据库备份与恢复 292
后记 298

教学资源推荐
作者: [美]孟卫一(Weiyi Meng)纽约州立大学宾汉姆顿分校 於德(Clement T. Yu) 伊利诺伊大学芝加哥分校  著
作者: 李雄飞 杜钦生 吴昊 编著
作者: [美] 内纳德·尤基克(Nenad Jukic;) 苏珊·维布斯基(Susan Vrbsky) 斯维特洛扎·奈斯特罗夫(Svetlozar Nestorov) 著
参考读物推荐
作者: (美)Craig Shallahamer 著
作者: [美]朱尔斯·J. 伯曼(Jules J. Berman) 著
作者: [美] 坎南·曼尼(Kannan Mani) 唐·沙利文(Don Sullivan) 著