Oracle Database 9i/10g/11g编程艺术

Oracle Database 9i/10g/11g编程艺术:深入数据库体系结构(中文版) Thomas Kyte著

Oracle 数据库
浏览人数:285
在读人数:1
读者:
无论你是开发人员还是DBA,要创建和管理稳定、高质量的Oracle系统,归根结底都需要理解Oracle数据库的体系结构。 本书是公认的Oracle数据库权威指南,凝聚了世界顶尖的Oracle专家Thomas Kyte数十年的宝贵经验和真知灼见。书中深入分析了Oracle数据库体系结构,包括文件、内存结构以及构成Oracle数据库和实例的底层进程,利用具体示例讨论了一些重要的数据库主题,如锁定、并发控制、事务等。同时分析了数据库中的物理结构,如表、索引和数据类型,并介绍采用哪些技术能最优地使用这些物理结构。本书在上一版的基础上做了大量增补,以涵盖11g最受关注的多项特性,尤其针对数据加密的途径进行了详细的阐释。
第1章 开发成功的Oracle应用 1   
1.1 我的方法 2   
1.2 黑盒方法 3   
1.3 开发数据库应用的正确(和不正确)方法 10   
1.3.1 了解Oracle体系结构 11   
1.3.2 理解并发控制 19   
1.3.3 多版本控制 22   
1.3.4 数据库独立性 28   
1.3.5 怎么能让应用运行得更快 42   
1.3.6 DBA与开发人员的关系 44   
1.4 小结 45   
第2章 体系结构概述 46   
2.1 定义数据库和实例 47   
2.2 SGA和后台进程 52   
2.3 连接Oracle 54   
2.3.1 专用服务器 54   
2.3.2 共享服务器 56   
2.3.3 TCP/IP连接的基本原理 57   
2.4 小结 59   
第3章 文件 60   
3.1 参数文件 61   
3.1.1 什么是参数 62   
3.1.2 遗留的init.ora参数文件 65   
3.1.3 服务器参数文件 67   
3.1.4 参数文件小结 72   
3.2 跟踪文件 73   
3.2.1 请求的跟踪文件 74   
3.2.2 针对内部错误生成的跟踪文件 78   
3.2.3 跟踪文件小结 82   
3.3 警告文件 83   
3.4 数据文件 85   
3.4.1 简要回顾文件系统机制 86   
3.4.2 Oracle数据库中的存储层次体系 87   
3.4.3 字典管理和本地管理的表空间 90   
3.5 临时文件 92   
3.6 控制文件 94   
3.7 重做日志文件 94   
3.7.1 在线重做日志 95   
3.7.2 归档重做日志 97   
3.8 密码文件 99   
3.9 修改跟踪文件 102   
3.10 闪回日志 103   
3.10.1 闪回数据库 103   
3.10.2 闪回恢复区 104   
3.11 DMP文件(EXP/IMP文件) 104   
3.12 数据泵文件 105   
3.13 平面文件 108   
3.14 小结 109   
第4章 内存结构 110   
4.1 进程全局区和用户全局区 110   
4.1.1 手动PGA内存管理 111   
4.1.2 自动PGA内存管理 117   
4.1.3 手动和自动内存管理的选择 127   
4.1.4 PGA和UGA小结 129   
4.2 系统全局区 129   
4.2.1 固定SGA 133   
4.2.2 重做缓冲区 134   
4.2.3 块缓冲区缓存 135   
4.2.4 共享池 141   
4.2.5 大池 143   
4.2.6 Java池 144   
4.2.7 流池 145   
4.2.8 自动SGA内存管理 145   
4.2.9 自动内存管理 147   
4.3 小结 148   
第5章 Oracle进程 149   
5.1 服务器进程 149   
5.1.1 专用服务器连接 150   
5.1.2 共享服务器连接 152   
5.1.3 数据库常驻连接池 152   
5.1.4 连接与会话 153   
5.1.5 专用服务器与共享服务器 158   
5.1.6 专用/共享服务器小结 161   
5.2 后台进程 162   
5.2.1 中心后台进程 163   
5.2.2 工具后台进程 171   
5.3 从属进程 173   
5.3.1 I/O从属进程 173   
5.3.2 Pnnn:并行查询执行服务器 174   
5.4 小结 175   
第6章 锁和闩 176   
6.1 什么是锁 176   
6.2 锁定问题 179   
6.2.1 丢失更新 179   
6.2.2 悲观锁定 180   
6.2.3 乐观锁定 182   
6.2.4 乐观锁定还是悲观锁定 188   
6.2.5 阻塞 188   
6.2.6 死锁 191   
6.2.7 锁升级 195   
6.3 锁类型 195   
6.3.1 DML锁 196   
6.3.2 DDL锁 204   
6.3.3 闩 209   
6.3.4 手动锁定和用户定义锁 217   
6.4 小结 218   
第7章 并发与多版本控制 219   
7.1 什么是并发控制 219   
7.2 事务隔离级别 220   
7.2.1 READ UNCOMMITTED 221   
7.2.2 READ COMMITTED 223   
7.2.3 REPEATABLE READ 224   
7.2.4 SERIALIZABLE 226   
7.2.5 READ ONLY 228   
7.3 多版本控制读一致性的含义 229   
7.3.1 一种会失败的常用数据仓库技术 229   
7.3.2 解释热表上超出期望的I/O 230   
7.4 写一致性 233   
7.4.1 一致读和当前读 233   
7.4.2 查看重启动 235   
7.4.3 为什么重启动对我们很重要 238   
7.5 小结 239   
第8章 事务 240   
8.1 事务控制语句 240   
8.2 原子性 242   
8.2.1 语句级原子性 242   
8.2.2 过程级原子性 244   
8.2.3 事务级原子性 247   
8.2.4 DDL与原子性 247   
8.3 持久性 247   
8.3.1 COMMIT的WRITE扩展 248   
8.3.2 非分布式PL/SQL代码块中的COMMIT 249   
8.4 完整性约束和事务 250   
8.4.1 IMMEDIATE约束 251   
8.4.2 DEFERRABLE约束和级联更新 251   
8.5 不好的事务习惯 255   
8.5.1 在循环中提交 255   
8.5.2 使用自动提交 261   
8.6 分布式事务 261   
8.7 自治事务 263   
8.7.1 自治事务如何工作 264   
8.7.2 何时使用自治事务 265   
8.8 小结 268   
第9章 redo与undo 269   
9.1 什么是redo 269   
9.2 什么是undo 270   
9.3 redo和undo如何协作 273   
9.4 提交和回滚处理 277   
9.4.1 COMMIT做什么 277   
9.4.2 ROLLBACK做什么 283   
9.5 分析redo 284   
9.5.1 测量redo 284   
9.5.2 能关掉重做日志生成程序吗 286   
9.5.3 为什么不能分配一个新日志 289   
9.5.4 块清除 291   
9.5.5 日志竞争 294   
9.5.6 临时表和redo/undo 296   
9.6 分析undo 299   
9.6.1 什么操作会生成最多和最少的undo 299   
9.6.2 ORA-01555: snapshot too old 错误 301   
9.7 小结 310   
第10章 数据库表 311   
10.1 表类型 311   
10.2 术语 313   
10.2.1 段 313   
10.2.2 段空间管理 315   
10.2.3 高水位线 316   
10.2.4 FREELIST 317   
10.2.5 PCTFREE和PCTUSED 320   
10.2.6 LOGGING和NOLOGGING 323   
10.2.7 INITRANS和MAXTRANS 324   
10.3 堆组织表 324   
10.4 索引组织表 327   
10.5 索引聚簇表 340   
10.6 散列聚簇表 347   
10.7 有序散列聚簇表 355   
10.8 嵌套表 357   
10.8.1 嵌套表语法 358   
10.8.2 嵌套表存储 364   
10.8.3 嵌套表小结 367   
10.9 临时表 368   
10.10 对象表 374   
10.11 小结 380   
第11章 索引 382   
11.1 Oracle索引概述 382   
11.2 B*树索引 384   
11.2.1 索引键压缩 386   
11.2.2 反向键索引 389   
11.2.3 降序索引 394   
11.2.4 什么情况下应该使用B*树索引 396   
11.2.5 B*树小结 405   
11.3 位图索引 406   
11.3.1 什么情况下应该使用位图索引 407   
11.3.2 位图联结索引 410   
11.3.3 位图索引小结 413   
11.4 基于函数的索引 413   
11.4.1 重要的实现细节 413   
11.4.2 一个简单的基于函数的索引例子 414   
11.4.3 只对部分行建立索引 422   
11.4.4 实现有选择的唯一性 424   
11.4.5 关于ORA-01743的警告 424   
11.4.6 基于函数的索引小结 425   
11.5 应用域索引 425   
11.6 关于索引的常见问题和神话 426   
11.6.1 视图能使用索引吗 427   
11.6.2 Null和索引能协作吗 427   
11.6.3 外键是否应该加索引 429   
11.6.4 为什么没有使用我的索引 430   
11.6.5 神话:索引中从不重用空间 435   
11.6.6 神话:最有差别的元素应该在最前面 438   
11.7 小结 441   
第12章 数据类型 442   
12.1 Oracle数据类型概述 442   
12.2 字符和二进制串类型 444   
12.2.1 NLS概述 445   
12.2.2 字符串 448   
12.3 二进制串:RAW类型 453   
12.4 数值类型 455   
12.4.1 NUMBER类型的语法和用法 457   
12.4.2 BINARY_FLOAT/BINARY_DOUBLE类型的语法和用法 460   
12.4.3 非固有数值类型 461   
12.4.4 性能考虑 461   
12.5 LONG类型 463   
12.5.1 LONG和LONG RAW类型的限制 463   
12.5.2 处理遗留的LONG类型 464   
12.6 DATE、TIMESTAMP和INTERVAL类型 469   
12.6.1 格式 469   
12.6.2 DATE类型 470   
12.6.3 TIMESTAMP类型 475   
12.6.4 INTERVAL类型 482   
12.7 LOB 类型 484   
12.7.1 内部LOB 485   
12.7.2 BFILE 495   
12.8 ROWID/UROWID类型 497   
12.9 小结 497   
第13章 分区 499   
13.1 分区概述 499   
13.1.1 提高可用性 500   
13.1.2 减少管理负担 502   
13.1.3 改善语句性能 505   
13.2 表分区机制 507   
13.2.1 区间分区 508   
13.2.2 散列分区 510   
13.2.3 列表分区 513   
13.2.4 间隔分区 515   
13.2.5 引用分区 520   
13.2.6 组合分区 524   
13.2.7 行移动 526   
13.2.8 表分区机制小结 528   
13.3 索引分区 529   
13.3.1 局部索引与全局索引 530   
13.3.2 局部索引 530   
13.3.3 全局索引 535   
13.4 再论分区和性能 547   
13.5 审计和段空间压缩 552   
13.6 小结 553   
第14章 并行执行 555   
14.1 何时使用并行执行 556   
14.2 Oracle Exadata 558   
14.3 并行查询 558   
14.4 并行DML 564   
14.5 并行DDL 566   
14.5.1 并行DDL和使用外部表的数据加载 567   
14.5.2 并行DDL和区段截断 568   
14.6 并行恢复 576   
14.7 过程并行化 577   
14.7.1 并行管道函数 578   
14.7.2 DIY并行化 580   
14.7.3 老式DIY并行化 583   
14.8 小结 587   
第15章 数据加载和卸载 588   
15.1 SQLLDR 588   
15.1.1 用SQLLDR加载数据的常见问题 592   
15.1.2 SQLLDR警告 613   
15.1.3 SQLLDR小结 614   
15.2 外部表 614   
15.2.1 建立外部表 615   
15.2.2 处理错误 619   
15.2.3 使用外部表加载不同的文件 622   
15.2.4 多用户问题 623   
15.2.5 外部表小结 624   
15.3 平面文件卸载 624   
15.4 数据泵卸载 631   
15.5 小结 633   
第16章 数据加密 634   
16.1 加密类型 634   
16.1.1 动态数据 634   
16.1.2 静态数据 635   
16.1.3 手动应用加密 638   
16.1.4 Oracle钱夹 639   
16.1.5 透明列级加密 641   
16.1.6 透明表空间加密 644   
16.2 加密不是访问控制 646   
16.3 实现手动应用加密 647   
16.3.1 避免使用手动方法的原因 648   
16.3.2 手动方法的性能影响 648   
16.3.3 何时使用手动方法 652   
16.4 实现列级加密 652   
16.4.1 如何使用列级加密 653   
16.4.2 列级加密的数据存储 653   
16.4.3 测量列级加密的性能影响 657   
16.4.4 影响大小 657   
16.4.5 列级加密的限制 662   
16.5 实现表空间加密 663   
16.5.1 如何使用表空间加密 663   
16.5.2 表空间加密的数据存储 664   
16.5.3 测量表空间加密的性能影响 665   
16.6 决定采用哪种加密技术 670   
16.7 小结 671   
索引 672   
优质好资源
PDF

Oracle Database 9i/10g/11g编程艺术:深入数据库体系结构(中文版).pdf

2018-10-18上传 下载:30 影印版 带目录
已下载
注:所有资源均由网友分享,经由管理员审核,保证完整性、清晰度,请放心使用!
网络资源

来自新浪微盘的资源
来自CSDN下载频道的资源
来自盘多多的资源
来自搜百度盘的资源
作者简介
评论