| 作者 |
| William G.Page.Jr |
| 丛书名 |
| 特版精品系列 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9787111078210 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 本书着重于介绍 Oracle 8/8i的新特性、性能调整、数据库管理、Oracle接口和应用工具、Oracle网络、Oracle应用服务器等主题。本书由十余位Oracle资深专家所著,他们在书中提供了大量实践经验,并配合示例进行讲解。 |
| 目录 |
| 目目 译者序 前言 第一部分 数据库管理的原则 第1章 数据库、DBMS原理和关系型 模型 1 1.1 了解数据库 1 1.2 理解DBMS 2 1.2.1 数据的安全 2 1.2.2 维护和实施完整性 3 1.2.3 理解事务 3 1.2.4 与数据库通信 4 1.3 理解RDBMS 4 1.3.1 关系模型 4 1.3.2 Codd十二条法则 6 第2章 逻辑数据库的设计和标准化 8 2.1 实体-关系模型 8 2.2 将实体关系图映射为关系模型 10 2.3 理解标准化 11 2.3.1 使用一个标准化例子 11 2.3.2 继续讨论范式 13 第3章 物理数据库的设计、硬件和相关 问题 15 3.1 理解应用类型 15 3.2 使用定量评估 16 3.3 使非标准化 17 3.4 理解存储分层结构 18 3.5 理解RAID 19 3.6 理解DBMS中的瓶颈 20 3.7 选择平台 21 3.8 操作系统集成与通用内存/CPU建议 22 3.9 物理设计原则与常规硬件设计建议 23 第4章 Oracle 的解决方案 26 4.1 Oracle历史回顾 26 4.2 Oracle是一个DBMS 26 4.3 Oracle是一个RDBMS吗 27 4.4 再论物理规划 28 4.5 Oracle的未来 30 第二部分 Oracle 7.x RDBMS 第5章 Oracle数据库体系结构 33 5.1 定义数据库 33 5.2 SYS和SYSTEM的模式 33 5.3 数据库组件 34 5.3.1 系统数据库对象 34 5.3.2 用户数据库对象 40 5.4 数据库段 41 5.4.1 表 41 5.4.2 索引 42 5.4.3 回滚段 43 5.4.4 表簇 43 5.4.5 哈西簇 43 5.5 Oracle数据字典 44 5.5.1 内部RDBMS(X $)表 44 5.5.2 数据字典表 44 5.5.3 动态性能视图 45 5.5.4 数据字典视图 45 5.6 其他数据库对象 45 5.6.1 视图 45 5.6.2 序列 45 5.6.3 触发器 46 5.6.4 同义词 46 5.6.5 数据库链 46 5.6.6 包、过程和函数 47 第6章 Oracle 实例结构 48 6.1 介绍 48 6.2 定义实例 48 6.3 创建实例 49 6.4 Oracle实例的组成 49 6.4.1 系统全局区 50 6.4.2 Oracle 后台进程 53 6.5 事务剖析 58 6.6 监控实例 58 6.6.1 使用追踪文件 58 6.6.2 通过操作系统追踪 59 6.6.3 使用V$表监控实例结构 59 第7章 探讨Oracle 环境 63 7.1 创建Oracle环境 63 7.2 设计一个优化的弹性体系结构 63 7.2.1 创建顶层 64 7.2.2 使用应用 64 7.2.3 管理数据库文件 65 7.2.4 命名约定 66 7.2.5 综合 67 7.3 配置Oracle环境 69 7.4 理解Oracle软件的环境变量 69 7.4.1 ORACLE_HOME主 70 7.4.2 在UNIX上运行Oracle 多种版本 70 7.4.3 在NT环境下运行Oracle的多个版 本 71 7.4.4 ORACLE_HOME 72 7.4.5 其他重要的配置文件 72 7.5 创建你的第一个数据库 73 7.5.1 创建初始化参数文件 73 7.5.2 创建实例 73 7.5.3 创建数据库 75 7.5.4 运行数据库创建后的步骤 75 7.5.5 创建数据库支持的对象 76 7.5.6 缺省帐户的安全性 77 7.5.7 更新系统的配置文件 77 7.6 探索Oracle数据库 77 7.6.1 查看数据库 77 7.6.2 查看数据库段 79 7.6.3 查看各种各样的数据库对象 80 7.7 研究不熟悉的环境 80 7.7.1 研究UNIX环境 80 7.7.2 研究NT环境 81 第8章 Oracle数据库系统管理概述 82 8.1 什么是数据库的生命周期 82 8.1.1 分析阶段 82 8.1.2 设计阶段 83 8.1.3 实现阶段 83 8.1.4 维护阶段 84 8.2 DBA是什么 84 8.3 建立一个数据库的系统管理步骤 86 8.4 小结 89 第三部分 Oracle 8.x RDBMS 第9章 从Oracle 7.x到Oracle 8.x的移植 91 9.1 三种主要方法 91 9.2 移植工具 92 9.2.1 高层次的步骤 92 9.2.2 低层次的任务 92 9.2.3 移植前的任务 94 9.2.4 接受的标准 95 9.3 常见问题 96 9.4 移植之后的任务 96 第10章 分区 97 10.1 什么是分区 97 10.2 Oracle 8分区的一些例子 99 10.3 分区索引 101 10.4 维护操作 102 10.5 并行能力 104 10.6 附加的考虑 105 第11章 大对象的历史 107 11.1 历史 107 11.2 Oracle 7 与Oracle 8结构的对比 108 11.3 LOB 109 11.3.1 使用LOB创建表 109 11.3.2 LOB存储管理 109 11.4 BFILE 110 11.5 使用LOB和BFILE的例子 111 11.6 DBMS_LOB包 112 11.7 更多的一些例子 114 11.8 最后的一些问题 115 第12章 面向对象的特性 116 12.1 背景 116 12.2 面向对象技术 117 12.3 Oracle 8对象选项 119 12.4 REF属性 120 12.5 方法 121 12.6 集合——变量数组和嵌套表 122 12.7 对象视图 123 第13章 Net 8网络:新特性和概念 125 13.1 概述 125 13.2 连接管理器 125 13.3 其他新特性和概念 126 13.3.1 新的安全能力 127 13.3.2 新服务、工具和API 127 13.4 配置一些新特性 128 13.4.1 多路复用和连接共享池 128 13.4.2 网桥 129 13.4.3 防火墙 129 13.4.4 监听器负载平衡 129 13.4.5 CMAN环境资源文件 129 13.5 配置文件示例 130 第14章 Oracle 8i 附加主题 132 14.1 新的ROWID 132 14.2 口令管理的增强 134 14.3 恢复管理器概念 136 14.3.1 恢复 136 14.3.2 RMAN命令和功能 137 14.3.3 RMAN术语 137 14.4 高级队列概念 139 14.5 约束、国家语言支持和SYS安全性 140 第15章 Oracle 8i概述 142 15.1 Oracle 8i中的Java能力 142 15.1.1 Java虚拟机的主要部分 143 15.1.2 编写Java存储过程 144 15.1.3 SQLJ:Oracle 8i Java预处理器 146 15.1.4 企业级JavaBeans支持 147 15.1.5 Java和CORBA 149 15.1.6 Oracle的Java开发工具:JDeveloper 149 15.2 因特网文件系统 150 15.3 Oracle interMedia 150 15.4 Oracle WebDB 152 15.5 Oracle 8i的可用性和可恢复性 152 15.6 安全性 154 15.7 其他特性 154 15.8 小结 157 第四部分 性能调整 第16章 性能调整基础 159 16.1 再看物理设计 159 16.2 为什么进行调整 160 16.3 调整规则 161 16.3.1 调整规则 1 161 16.3.2 调整规则 2 162 16.3.3 调整规则 3 162 16.3.4 调整规则 4 163 16.3.5 调整规则 5 163 16.4 调整目标 164 16.5 使用投资的回报 164 16.5.1 步骤1:进行正确的逻辑设计 165 16.5.2 步骤2:进行正确的物理设计 165 16.5.3 步骤3:如果必要,进行重新 设计 165 16.5.4 步骤4:书写高效率的应用代码 165 16.5.5 步骤5:如果必要,重写代码 165 16.5.6 步骤6:调整数据库的内存结构 166 16.5.7 步骤7:如果必要,调整操作系 统内存结构 166 16.5.8 步骤8:调整数据库输入/输出 166 16.5.9 步骤9:如果必要,调整操作 系统输入/输出 166 16.5.10 步骤10:如果必要,调整网络 167 16.5.11 步骤11:如果必要,调整客户端 167 16.5.12 步骤12:如果所有的调整都失 败了,考虑更多的特殊解决方案 167 16.6 再看应用类型 169 16.6.1 OLTP问题 170 16.6.2 DSS问题 170 16.6.3 OLTP与DSS都需要考虑的其他问题 171 16.7 理解基准测试 171 16.8 使用Oracle诊断工具 172 16.8.1 使用SQL_TRACE与TKPROF 173 16.8.2 使用EXPLAIN PLAN 173 16.8.3 使用V$动态性能视图 173 16.8.4 使用服务器管理器监控器 173 16.8.5 使用企业管理器性能包 174 16.8.6 使用utlbstat/utlestat与reportl.txt 174 16.8.7 使用第三方产品 174 第17章 应用调整 175 17.1 动机 175 17.2 理解优化程序 176 17.2.1 分级访问路径 177 17.2.2 分析查询以提高效率 178 17.2.3 指定优化程序模式 179 17.2.4 理解优化术语 181 17.3 SQL TRACE与tkprof 182 17.4 理解EXPLAIN PLAN 185 17.5 鉴别典型问题 186 17.5.1 正确使用索引 186 17.5.2 应用调整的典型问题 187 17.6 重写查询 189 17.6.1 使用集合操作符 189 17.6.2 使用布尔转换 190 17.7 介绍Oracle 8的新的索引特性 190 17.7.1 使用索引分区 190 17.7.2 使用相等分区的本地索引 191 17.7.3 使用知道分区的优化程序 191 17.7.4 使用唯一索引表 191 17.7.5 使用反向键值索引 191 第18章 调整内存 192 18.1 UTLBSTAT/UTLESTAT 192 18.1.1 解释结果 193 18.1.2 回顾报告文件 193 18.2 调整共享池 194 18.2.1 改进库缓存性能的方针 195 18.2.2 多线程服务器问题 198 18.3 调整数据库缓冲区缓存 198 18.4 调整排序 202 18.4.1 什么是触发排序 202 18.4.2 排序参数 203 18.4.3 其他排序微调参数 205 18.5 调整多线程服务器 205 18.6 调整锁 206 18.7 再看操作系统集成 207 第19章 调整输入/输出 209 19.1 调整表空间与数据文件 209 19.1.1 分区表空间 210 19.1.2 聚簇 211 19.1.3 监控 213 19.2 调整块与区间 213 19.2.1 使用预分配值 214 19.2.2 使用Oracle条 214 19.2.3 避免碎片 215 19.3 调整回滚段 217 19.4 调整重做日志 219 19.5 Oracle 8的新输入/输出特性 220 19.5.1 分区扩展表名 220 19.5.2 直接载入INSERT 220 第20章 Oracle 8.x调整问题 222 20.1 分区 222 20.2 唯一索引表 223 20.3 并行数据控制语言 224 20.4 大池与非常大的内存 225 20.5 网络增强 227 20.6 数据库限制 228 20.7 小结 228 第五部分 管理Oracle数据库 第21章 管理数据库存储 231 21.1 管理数据库对象 231 21.1.1 管理Oracle块 231 21.1.2 理解PCTFREE与PCTUSED 232 21.1.3 索引与PCTUSED/PCTFREE 233 21.1.4 管理表存储区 233 21.1.5 管理索引 234 21.1.6 监控回滚段 235 21.1.7 监控临时表空间和段 235 21.2 数据库碎片 235 21.2.1 分裂成了碎片的表空间 235 21.2.2 处理分裂成碎片的表空间 237 21.2.3 对象碎片 238 21.2.4 行转移 238 21.2.5 行链接 239 21.2.6 消除链接和转移的行 239 21.3 管理回滚段 241 21.3.1 回滚段操作 241 21.3.2 设定回滚段大小 242 21.3.3 使用OPTIMAL参数 243 21.3.4 进行装载测试以获得回滚段估算 244 21.4 鉴别存储问题 245 21.4.1 开发表空间 246 21.4.2 表检查 249 21.4.3 优化簇存储 250 21.4.4 检查索引 250 21.4.5 观察回滚段的增长 251 21.4.6 管理临时表空间 252 21.5 管理增长的数据库 252 21.5.1 校正过度的表增长 252 21.5.2 合并簇 253 21.5.3 合并索引 253 21.5.4 管理表空间的增长 254 21.6 故障检查 255 21.6.1 区间限制 255 21.6.2 临时表碎片 255 21.7 方案:监控数据库的增长 255 第22章 鉴别资源密集型用户 259 22.1 不同的资源 259 22.2 CPU 261 22.2.1 CPU预览 262 22.2.2 寻找CPU密集型用户 263 22.3 文件输入/输出 275 22.3.1 输入/输出预览 276 22.3.2 寻找输入/输出密集型用户 279 22.3.3 磁盘队列 282 22.4 内存 282 22.4.1 进程内存分类 284 22.4.2 内存预览 285 22.4.3 寻找内存密集型用户 286 22.4.4 缓冲区高速缓存 289 22.4.5 共享池 290 22.4.6 递归调用 291 22.4.7 分页 291 22.4.8 分页错误 292 第23章 安全管理 294 23.1 用户验证 294 23.1.1 数据库验证 294 23.1.2 外部验证 296 23.1.3 企业验证 297 23.2 数据库权限管理 298 23.2.1 理解安全角色 301 23.2.2 理解管理 302 23.3 Oracle企业安全管理器 302 23.4 监控数据库资产 302 23.4.1 审计登录 302 23.4.2 审计数据库操作 303 23.4.3 审计数据库对象上的DML 303 23.4.4 管理审计 304 23.5 保护数据完整性 304 23.6 Oracle 8i因特网安全特性 305 23.6.1 使用数字证书 305 23.6.2 使用RADIUS协议的高级验证 305 23.7 防火墙支持 306 23.8 好的粒状存取控制 306 23.9 数据库资源管理器 306 23.10 硬件安全 307 23.11 恢复丢失的数据 307 23.11.1 操作系统备份 307 23.11.2 逻辑备份 307 第24章 备份与恢复 309 24.1 备份策略 309 24.2 理解物理数据丢失与逻辑数据丢失 310 24.3 使用逻辑备份 313 24.3.1 完全逻辑备份 316 24.3.2 指定用户模式的逻辑备份 316 24.3.3 指定表的逻辑备份 317 24.4 使用冷物理备份 317 24.4.1 命令行驱动冷物理备份 318 24.4.2 桌面驱动冷备份 319 24.5 使用热物理备份 321 24.5.1 理解复杂性 321 24.5.2 命令行驱动热物理备份 322 24.5.3 桌面驱动热物理备份 323 24.6 使用恢复管理器进行物理备份 324 24.7 从逻辑备份中恢复 326 24.7.1 从逻辑备份完全恢复 328 24.7.2 使用逻辑备份进行部分恢复 329 24.8 使用物理恢复 329 24.8.1 物理地重建一个数据库 330 24.8.2 完全恢复 331 24.8.3 不完全恢复 336 24.9 测试策略 340 24.10 问题解决策略 341 24.11 项目:被破坏的归档日志的不同涵意 341 第25章 完整性管理 343 25.1 实现锁 343 25.1.1 锁的需要 344 25.1.2 锁的概念 344 25.1.3 锁的类型 345 25.1.4 人工锁定 348 25.1.5 数据库死锁 349 25.2 分析V$lock 349 25.2.1 案例1:专用锁定的表 350 25.2.2 案例2:会话更新专用锁定表的行 351 25.2.3 案例3:一个会话试图更新另一会 话更新过的行 352 25.3 监控系统中的锁 353 25.4 避免锁:可能的解决策略 359 25.5 锁定与分布式数据库 361 25.6 使用闩实现锁 366 25.6.1 闩的功能 366 25.6.2 分析与闩相关的视图 367 25.6.3 闩竞争约束 367 第六部分 Oracle接口和应用工具 第26章 管理员使用的SQL*Plus 375 26.1 系统管理的SQL*Plus 375 26.1.1 使用SQL*Plus环境变量 376 26.1.2 激活/访问SQL*Plus 377 26.1.3 编辑SQL命令 377 26.1.4 输入并编辑SQL*Plus命令 378 26.1.5 在SQL*Plus中使用你的操作系 统编辑器 379 26.1.6 运行SQL*Plus/SQL命令 380 26.2 使用SQL*Plus的COPY命令 383 26.3 使用SQL创建SQL 385 26.4 在SQL*Plus中对用户权限的限制 386 26.4.1 禁用一个SQL命令 388 26.4.2 重新允许使用一个SQL命令 388 26.4.3 禁用SET ROLE 389 26.4.4 禁用角色 390 26.5 追踪SQL语句 390 26.5.1 理解执行计划 392 26.5.2 使用AUTOTRACE功能 393 26.6 SQL*Plus 8.1版的增强 395 第27章 Oracle企业管理器 397 27.1 理解企业管理器体系结构 397 27.2 开始学习 399 27.3 使用控制台功能 400 27.3.1 理解集成的控制台功能 401 27.3.2 使用导航器浏览数据库 402 27.3.3 使用组使数据库形象化 403 27.3.4? 使用作业使数据库系统管理任 务自动化 403 27.3.5 使用事件管理响应变化 404 27.4 使用数据库管理工具 405 27.4.1 管理实例 406 27.4.2 管理模式 407 27.4.3 管理安全性 408 27.4.4 管理存储 409 27.4.5 执行SQL 409 27.4.6 管理可恢复性 410 27.4.7 管理数据 410 27.4.8 管理软件 410 27.5 使用诊断包 411 27.5.1 性能监控与追踪 411 27.5.2 追踪数据库活动 411 27.5.3 监控会话 411 27.5.4 使用容量计划器与锁管理器 412 27.6 使用调整包 412 27.6.1 管理表空间 413 27.6.2 使用Oracle专家 413 27.6.3 使用SQL分析 414 27.7 使用企业增值产品 414 27.8 小结 415 第28章 PL/SQL基础 416 28.1 理解PL/SQL 416 28.2 理解PL/SQL引擎 417 28.2.1 适合客户/服务器环境 417 28.2.2 适合客户环境 420 28.2.3 对比服务器端与客户端开发 420 28.3 在工具箱里增加PL/SQL 421 28.3.1 加强SQL脚本 421 28.3.2 简化数据库管理 421 28.3.3 以较少的争论得到较好的信息 422 28.3.4 设计更好的数据库应用 422 28.4 开始学习PL/SQL 422 28.4.1 理解事情的模式 423 28.4.2 基本PL/SQL开发环境 424 28.4.3 存取数据字典 425 28.5 语言教程 425 28.5.1 编码规定 426 28.5.2 特殊字符 426 28.5.3 PL/SQL的块结构 427 28.5.4 声明变量 438 28.5.5 赋值 448 28.5.6 循环 448 28.5.7 使用游标 451 28.5.8 例外处理 456 28.5.9 使用子程序 461 28.6 Oracle8i专有的功能 468 28.6.1 本地动态SQL 468 28.6.2 成批捆绑 468 第29章 使用存储子过程、包与提供的包 469 29.1 定义存储子过程与包 469 29.2 建立与使用存储程序 470 29.2.1 从SQL调用存储子过程 473 29.2.2 从PL/SQL调用存储子过程 474 29. 3 使用SHOW ERRORS调试 475 29. 4 检查存储程序或包的状态 479 29. 5 建立与使用包 480 29.5.1 包声明与包体 480 29.5.2 比较公有声明与私有声明 483 29.5.3 引用包元素 483 29. 6 Oracle 8i数据库提供的包 484 29.6.1 在服务器内交互 484 29.6.2 在服务器以外交互 485 29.6.3 从服务器获取更多的信息 485 29.7 描述提供的包 485 29.8 开始学习Oracle 8i提供的包 486 29.8.1 定位DBMS包 487 29.8.2 确定包已正确安装 487 29.9 使用Oracle 8i提供的包 488 29.9.1 使用DBMS_APPLICATION_INFO 监控 488 29.9.2 使用DBMS_DDL重新编译包 489 29.9.3 使用DBMS_OUTPUT格式化 输出 492 29.10 小结 494 第30章 使用导入与导出 495 30.1 理解导出与导入的目的与能力 495 30.2 理解行为 497 30.3 控制与配置导出与导入 498 30.4 导出与导入会话预排 503 30.4.1 当表存在时识别行为 503 30.4.2 重新组织一个碎片表空间 504 30.4.3 在模式间移动数据库对象 506 30.4.4 多个对象与多个对象类型 507 30.4.5 分区级导入 508 30.4.6 当表空间不匹配时识别行为 508 30.4.7 在表空间之间移动数据库对象 509 30.5 使用SHOW与INDEXFILE选项 509 30.6 便携式表空间 511 第31章 SQL*Loader 512 31.1 运行SQL*Loader 512 31.2 SQL*Loader组件 513 31.2.1 SQL*Loader输入数据 514 31.2.2 SQL*Loader输出 514 31.2.3 控制文件语法 515 31.3 SQL*Loader示例一览 516 31.3.1 例子1:装载定长数据 518 31.3.2 例子2:装载变长数据 520 31.3.3 例子3:装载嵌套数据 521 31.3.4 例子4:条件装载 522 31.3.5 例子5:装载到分区表 524 31.4 常规路径装载与直接路径装载 527 31.4.1 使用常规路径装载 527 31.4.2 使用直接路径装载 528 31.4.3 装载嵌套列、嵌套表与变长数组 529 31.4.4 使用SQL*Loader装载LOBS 530 31.4.5 SQL*Loader性能提示 531 31.5 小结 531 第32章 系统管理员设计器 532 32.1 设计器:Oracle 8i的常用计算机辅 助工程解决方案 532 32.1.1 系统开发生命周期 532 32.1.2 上游CASE与下游CASE 533 32.2 设计器一览 533 32.2.1 设计器/2000 R1.3.2的改变 534 32.2.2 设计器组件 535 32.2.3 设计编辑器 536 32.2.4 理解知识库 537 32.2.5 使用图表 538 32.2.6 设计器使用的图表技术 539 32.2.7 生成器 540 32.2.8 模型重建机制 541 32.2.9 Oracle CASE交换机 541 32.2.10 使用设计器的瀑布定向方法 542 32.3 设计器管理 544 32.3.1 理解知识库 544 32.3.2 知识库大小 545 32.3.3 保护设计器知识库 545 32.3.4 共享对象与传送对象 546 32.3.5 使用知识库的引用完整性 549 32.3.6 版本控制与改变控制 549 32.3.7 移植应用 549 32.3.8 移动主存取控制元素 550 32.3.9 在文档中放置设计器图表 551 32.3.10 使用设计器的逆向工程 552 32.3.11 使用设计器进行数据管理配置 553 32.4 提高设计器性能 555 32.4.1 优化客户机 555 32.4.2 优化网络 555 32.4.3 优化设计器 555 32.4.4 优化数据库服务器 555 32.5 应用编程界面 556 32.5.1 使用API 556 32.5.2 API视图与包 557 32.5.3 API限制 557 32.6 故障检定设计器 558 32.6.1 检查常见错误 558 32.6.2 使用诊断和追踪 558 32.6.3 从设计器有效地生成开发器应 用的技巧 560 32.6.4 设计器与Oracle 8i 562 第七部分 Oracle 网络 第33章 Oracle网络基础 565 33.1 理解 Oracle网络产品特性 565 33.1.1 理解系统管理与管理组件 566 33.1.2 网络命名规定 567 33.1.3 理解可选择的安全性扩展名 567 33.2 SQL*Net与Net8体系结构 568 33.3 网络协议堆栈 568 33.3.1 Oracle协议适配器 569 33.3.2 透明网络底层 569 33.4 使用开放系统互连参考模型 569 33.4.1 基层 570 33.4.2 接口 571 33.4.3 协议堆栈 571 33.4.4 TCP/IP协议堆栈 571 33.5 理解SQL*Net操作 573 33.6 安装与配置SQL*Net 574 33.6.1 计划网络设计 574 33.6.2 配置文件一览 574 33.6.3 准备安装SQL*Net 575 33.6.4 安装32位SQL*Net 577 33.6.5 使用Oracle客户软件管理器组件 578 33.6.6 使用Oracle客户软件管理器安装 SQL*Net 579 33.7 小结 580 第34章 高级安全选项 581 34.1 强力安全方针基础 581 34.2 因特网使用三层应用设计 582 34.3 防火墙:它们是什么?不是什么 583 34.3.1 在计算机资源中锁定端口 583 34.3.2 计算机资源间网络通信的约束 583 34.3.3 约束通信方向 584 34.3.4 限制Web服务器与数据库交互 584 34.3.5 防火墙类型 585 34.4 使用高级安全选项 585 34.5 启用数据加密与校验 586 34.6 ASO支持的RADIUS协议设备 587 34.7 安全套接字层协议 588 34.8 Oracle工具包的支持 588 34.9 理解多线程服务器 589 34.9.1 多线程服务器结构 589 34.9.2 配置多线程服务器 590 34.9.3 管理多线程服务器 591 34.10 使用Oracle连接管理器 591 34.10.1 配置连接多路技术 591 34.10.2 配置多协议支持 592 34.11 实例学习 592 34.12 小结 593 第八部分 Oracle应用服务器 第35章 Oracle应用服务器概述 595 35.1 Oracle应用服务器介绍 595 35.2 理解因特网计算 595 35.3 理解Oracle应用服务器 596 35.3.1 HTTP监听层 597 35.3.2 Oracle应用服务器层 598 35.3.3 应用层 598 35.3.4 插件 598 35.3.5 JCORBA与企业级Java Beans 598 35.4 使用Oracle应用服务器提供基本服务 599 35.4.1 事务服务 599 35.4.2 插件之间交换服务 599 35.4.3 永久存储服务 599 35.4.4 验证服务 599 第36章 Oracle应用服务器组件 600 36.1 分析HTTP监听层 600 36.1.1 获得更详细的细节 600 36.1.2 理解HTTP监听器的体系结构 601 36.1.3 文件的内存映射 601 36.1.4 路径映射 601 36.1.5 解析域名 601 36.1.6 HTTP监听器配置参数 602 36.1.7 第三方HTTP监听器 603 36.2 分析应用服务器层 604 36.2.1 WRB调度器 604 36.2.2 IPC支持 605 36.2.3 应用服务器层组件 605 36.3 分析应用层 606 36.3.1 使用PL/SQL插件 606 36.3.2 WRB SDK的孩子:C Web插件 608 36.3.3 WRB应用程序界面 608 36.3.4 理解插件与ICX 608 36.3.5 WRB记录器应用程序界面 616 36.3.6 使用JWeb插件 618 36.3.7 使用Perl插件 621 36.3.8 企业级Java Beans与JCORBA 621 36.4 小结 622 第37章 安装与配置OAS 623 37.1 在Sun Solaris上安装Oracle应用服 务器 623 37.1.1 硬件与软件需求 623 37.1.2 安装完成后重新链接可执行文 件 624 37.1.3 进行预安装工作 625 37.1.4 设置预备环境变量 625 37.1.5 设计创建文件的权限代码 626 37.1.6 从起始文件更新环境 626 37.2 在Windows NT上安装Oracle应用 服务器 626 37.3 理解Oracle应用服务器的最新安装 特性 627 37.3.1 鉴别产品依赖性 628 37.3.2 设计路径结构 628 37.4 安装Oracle应用服务器 629 37.5 使用Oracle应用服务器的结点管理器 629 37.6 创建一个HTTP监听器 630 37.7 安装PL/SQL工具包 631 37.8 创建一个新的PL/SQL插件 632 37.9 疑难解答 634 37.10 安装的其他有用提示 634 第九部分 并行环境与分布式环境 第38章 并行查询管理 635 38.1 介绍 635 38.2 并行加载 636 38.3 并行恢复 636 38.4 并行传播 637 38.5 并行SQL执行 637 38.6 可以并行的SQL操作 638 38.7 理解并行度 639 38.7.1 决定并行度 639 38.7.2 当没有足够的查询伺服器时 640 38.8 理解查询服务器进程 640 38.9 分析对象以更新统计 641 38.10 理解 9,3,1算法 641 38.11 理解并行DML 641 38.12 OPS环境下的并行执行 642 38.13 Oracle 8i中的改变 643 38.14 调整并行查询 643 38.15 疑难解答 643 第39章 并行服务器管理 644 39.1 理解并行服务器的优点 644 39.2 单实例与并行服务器数据库的比较 645 39.2.1 厂商接口 646 39.2.2 使用并行缓存管理锁进程 647 39.2.3 使用并行缓存管理锁参数 650 39.2.4 并行服务器初始参数 656 39.2.5 并行服务器的回滚段考虑 659 39.2.6 重做日志与并行服务器实例 660 39.2.7 使用空闲列表组以避免竞争 661 39.3 决定何时并行服务器可以解决一个 商务需要 664 39.4 为超越故障设计一个并行数据库 664 39.5 为可伸缩性设计一个并行数据库 666 39.5.1 应用分区与功能分区 666 39.5.2 部门与线型商务分区 669 39.5.3 物理表分区 669 39.5.4 事务分区 670 39.5.5 索引与可伸缩性考虑 670 39.5.6 序列生成器与多实例 671 39.6 并行服务器创建的特殊考虑 671 39.7 怎样监控与调整并行服务器 673 39.7.1 V$LOCK_ACTIVITY 673 39.7.2 V$BH 674 39.7.3 V$CACHE与V$PING 675 39.7.4 并行服务器的调整策略 676 39.8 附加的提示与注意事项 677 第40章 分布式数据库管理 678 40.1 理解分布式数据库 678 40.1.1 描述每种类型的数据库 678 40.1.2 数据库命名规定 679 40.1.3 归档透明性 679 40.1.4 使用Oracle安全服务器与全局 用户 680 40.1.5 SQL*Net 681 40.2 使用一个分布数据库 681 40.2.1 设置一个分布式系统 682 40.2.2 识别分布式系统中的潜在问题 684 40.2.3 调整分布式系统 685 40.3 使用分布式事务 685 40.3.1 理解两阶段提交 685 40.3.2 悬而未决事务的处理 686 40.4 理解只读快照 688 40.5 在列级创建一个只读快照 688 40.5.1 设置一个快照 689 40.5.2 使用快照刷新组 690 40.6 快速快照刷新 690 40.6.1 确定快照中的潜在问题 690 40.6.2 理解快照的限制 692 40.6.3 调整快照 693 40.6.4 使用快照的初始化参数 694 第41章 复制管理 695 41.1 什么是复制 695 41.2 多重主机复制 695 41.2.1 主群组 696 41.2.2 快照组 697 41.3 传播的类型 699 41.3.1 异步传播 699 41.3.2 同步传播 700 41.4 复制的类型 700 41.4.1 行级复制 700 41.4.2 串行传播 701 41.4.3 并行传播 701 41.4.4 过程化复制 701 41.5 冲突解决 702 41.5.1 冲突的类型 702 41.5.2 避免冲突 702 41.5.3 鉴别冲突 703 41.5.4 解决冲突 703 41.6 快照 705 41.7 一些有用的工具 709 41.8 Oracle 8与 Oracle 8i的新功能 710 41.8.1 Oracle 8复制的新功能 710 41.8.2 Oracle 8i复制的新功能 710 41.9 小结 710 附 录 A 介绍在Solaris系统上的Oracle 711 B Windows NT上的Oracle 721 |