《大型数据库系统Oracle与实训》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘波主编;凌广明,黄青云副主编
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2015
  • ISBN:9787113184391
  • 页数:270 页
图书介绍:本书共包括9章,内容涉及与Oracle数据库相关的Linux命令和SQL*PLUS的基本操作;Oracle的启动及相关参数文件;Oracle的锁机制;多版本控制;ORACLE的事务以及ORACLE的redo和undo日志;数据库表和索引。

第0章 Oracle数据库概述 1

0.1 Oracle数据库简介 1

0.2 Oracle数据库的发展史 2

0.3 Oracle数据库的特点 4

0.3.1 真正应用集群 4

0.3.2 自动存储管理 6

0.3.3 数据库运行中的自我管理 6

0.3.4 其他新特性 8

0.4 常见的大型关系数据库产品 8

小结 10

第1章 Oracle数据库的运行环境及相关工具 11

1.1 操作Oracle数据库相关的Linux命令 11

1.1.1 与Oracle数据库相关的文件操作命令 12

1.1.2 查看文件内容命令 15

1.1.3 查找文件命令 17

1.1.4 su命令 18

1.1.5 ps命令 19

1.1.6 查看帮助文件命令 20

1.1.7 与Oracle数据库相关的shell环境变量 21

1.2 ed编辑器和vi编辑器介绍 24

1.2.1 ed编辑器介绍 24

1.2.2 vi编辑器介绍 31

1.3 SQL*PLUS介绍 37

1.3.1 SQL*PLUS的作用 38

1.3.2 启动和退出SQL*PLUS 38

1.3.3 在SQL*PLUS中执行SQL语句 40

1.3.4 SQL*PLUS的缓冲区操作 41

1.3.5 SQL*PLUS的变量 44

1.3.6 spool命令 44

1.3.7 SQL*PLUS的其他常用命令 45

小结 46

习题 47

第2章 Oracle数据库的体系结构 48

2.1 Oracle的启动与关闭 48

2.1.1 Oracle数据库的启动 49

2.1.2 Oracle数据库的关闭 67

2.1.3 Oracle数据库启动与关闭小结 68

2.2 Oracle数据库的存储层次 69

2.2.1 表空间 69

2.2.2 段 70

2.2.3 区段 71

2.2.4 数据块 74

2.2.5 存储层次小结 75

2.3 Oracle数据库的访问 75

2.3.1 配置客户端文件 76

2.3.2 静态监听器注册 77

2.3.3 动态注册监听器 78

2.3.4 tnsping命令的使用 79

小结 81

习题 81

第3章 Oracle数据库的锁机制 83

3.1 Oracle数据库锁的类型 83

3.1.1 DML锁 84

3.1.2 DDL锁 90

3.1.3 闩 94

3.2 用户定义锁 98

3.2.1 用手动方式锁定一条SQL语句的数据 98

3.2.2 通过dbms_lock包创建自己的锁 100

3.3 Oracle数据库的阻塞与死锁 102

3.3.1 insert语句引起的阻塞 102

3.3.2 死锁 104

3.4 丢失更新 105

3.4.1 丢失更新产生的原因 105

3.4.2 悲观锁定的方法解决丢失更新 105

3.4.3 乐观锁定的方法解决丢失更新 106

小结 110

习题 111

第4章 并发与多版本控制 113

4.1 并发控制 114

4.2 事务隔离级别 114

4.2.1 READ UNCOMMITTED隔离级别 116

4.2.2 READ COMMITTED隔离级别 117

4.2.3 REPEATABLE READ隔离级别 121

4.2.4 SERIALIZABLE隔离级别 122

4.2.5 READ ONLY隔离级别 125

4.3 多版本并发控制的缺点 126

4.3.1 查询中会出现过多的I/O操作 126

4.3.2 写一致问题 128

小结 135

习题 136

第5章 事务的原子性 142

5.1 事务的概念及相关控制语句 143

5.1.1 commit语句 143

5.1.2 rollback语句与savepoint语句 146

5.2 原子性 147

5.2.1 语句级原子性 147

5.2.2 过程级原子性 150

5.2.3 DDL的原子性 153

5.3 事务与完整性约束的关系 153

5.3.1 immediate约束 153

5.3.2 事务与延迟约束 154

5.4 自治事务 155

5.4.1 自治事务工作原理 156

5.4.2 何时使用自治事务 157

小结 158

习题 158

第6章 redo操作与undo操作 160

6.1 什么是redo操作 161

6.2 什么是undo操作 162

6.3 Oracle的实例恢复与介质恢复 164

6.3.1 实例恢复 164

6.3.2 介质恢复 166

6.4 提交和回滚处理 167

6.4.1 提示操作做了什么 167

6.4.2 回滚操作做了什么 169

6.5 分析redo日志产生的原理 171

6.5.1 查看和修改数据库的日志模式 171

6.5.2 测量生成的redo日志 172

6.5.3 减少redo日志的方法 173

6.5.4 块清除 175

6.6 分析undo信息 178

6.6.1 DML产生的undo信息 178

6.6.2 Oracle的闪回功能 180

小结 185

习题 185

第7章 Oracle数据库的表 187

7.1 Oracle数据库的表类型 188

7.2 Oracle数据库的段及管理方式 188

7.2.1 段 188

7.2.2 段空间管理 190

7.2.3 高水位线 190

7.2.4 空闲列表 192

7.2.5 pctfree参数和pctused参数 196

7.2.6 initrans参数与maxtrans参数 198

7.3 堆组织表 198

7.4 索引组织表 200

7.5 索引聚簇表 209

7.5.1 创建聚簇 210

7.5.2 聚簇索引 211

7.5.3 聚簇中数据的存储 212

7.5.4 索引聚簇表小结 214

7.6 临时表 214

7.6.1 事务级临时表 215

7.6.2 会话级临时表 216

7.6.3 测试临时表生成的redo数据 216

小结 218

习题 218

第8章 查询优化与索引 221

8.1 Oracle的查询优化器 222

8.1.1 基于规则的优化器 222

8.1.2 基于代价的优化器 224

8.1.3 查询计划 226

8.2 B*树索引 227

8.2.1 索引键压缩 230

8.2.2 反向键索引 231

8.2.3 降序索引 233

8.2.4 B*树索引的使用原则 235

8.2.5 B*树索引小结 240

8.3 位图索引 241

8.3.1 使用位图索引的条件 242

8.3.2 位图连接索引 244

8.3.3 位图索引小结 246

8.4 函数索引 247

8.4.1 函数索引举例 247

8.4.2 在自定义函数上建立索引 248

8.4.3 在字符类型的列上创建函数索引 250

8.4.4 只对部分行建立索引 251

8.4.5 关于函数索引的ORA-01743错误 253

8.4.6 函数索引小结 253

8.5 Oracle数据库不使用索引的情形 254

小结 258

习题 259

附录A 261

附录B 264

附录C 266

参考文献 270