请输入您要查询的百科知识:

 

词条 未公开的Oracle数据库秘密
释义

基础信息

出版社: 人民邮电出版社; 第1版丛书名: 图灵程序设计丛书

平装: 423页

正文语种: 简体中文

开本: 16

ISBN: 9787115260161

条形码: 9787115260161

产品尺寸及重量: 23.2 x 18.8 x 2.4 cm ; 721 g

ASIN: B005HGE134

内容简介

《未公开的Oracle数据库秘密》讲述了ORACLE数据库管理系统中大量鲜为人知的特性,并详细生动地揭示了如何将这些特性集成到ORACLE DBMS中。书中主要对初始化参数、数据字典基表、事件、X$固定表、SQL语句、提供的PL/SQL程序包、应用程序开发、性能、Oracle网络、实时应用集群、实用工具等进行了深入的探讨,旨在提出一种解决问题的结构化方法,引导读者灵活自如地解决ORACLE DBMS中遇到的棘手问题。

《未公开的Oracle数据库秘密》适合具有一定ORACLE DBMS管理经验的ORACLE数据库管理员阅读。

译者序

ORACLE是目前世界上最流行的大型关系数据库管理系统之一,它以高级结构化查询语言(SQL)为基础。目前,关于ORACLE数据库的书籍琳琅满目,但是鲜有专门针对未在相关文档中说明的高级特性的技术书籍。虽然开发者可以通过Internet或ORACLE的Metalink支持平台获得相关信息,但这会造成时间和金钱的大量浪费。本书是对ORACLE庞大文档系统和Metalink支持平台的有利补充和完善,旨在为大家揭示ORACLE数据库大量鲜为人知的特性,提升数据库的性能和功能。

本书是一本技术性较强的书籍,需要读者具有一定的数据库管理经验。本书组织结构极为清晰,每章开头都会介绍某个鲜为人知的特性所能带来的好处,以及与该特性相关的文档说明程度,并包括与该章主题相关的ORACLE数据库手册的引用。同时,每章最后都附有源代码文件及功能,这样读者就能及时地实现相关功能并加以巩固。阅读完本书,我们会知道这些没有相关文档说明的特性是如何集成到ORACLE DBMS中的,最重要的是我们能够学习如何从扩展的SQL跟踪数据得到一个基本的性能诊断方法。通过本书的学习,你也有能力继续揭秘ORACLE中更多鲜为人知的有用特性。也就是说,本书能教给读者一种举一反三的结构化方法。

本书的翻译工作得到了华中科技大学“服务计算技术与系统教育部重点实验室”和“集群与网络计算湖北省重点实验室”各位老师和同学的热心帮助,特别感谢金海老师、袁平鹏老师、谢夏老师、蒋文斌老师等实验室各位老师对我们的指导和无微不至的关心。

感谢李浩同学为该书作出的巨大贡献,没有他的辛勤付出就没有该书的出版,与他的合作非常愉快。同时,非常感谢好友潘李敏,感谢她参与了该书部分章节的翻译和审核工作,并提出了许多宝贵的建议;也非常感谢蔡亚男,一些章节因为她的参与和指导性建议变得通俗易懂、更加精彩。

最后,感谢图灵公司给了我们翻译这样一本好书的机会,感谢编辑为本书出版所做的细致入微的工作,特别感谢李松峰老师和傅志红老师为本书翻译提出的宝贵建议。衷心希望该书能让读者更便捷地获取信息、找到所求。

蒋海鸥

2011年6月23日于百度大厦

作译者

Norbert Debes Oracle8、Oracle8i、Oracle9i注册专业Oracle DBA, 先后担任Oracle德国分公司支持服务部组长、战略联盟技术客户经理。 从2002年开始, 他一直以DBA、性能工程师、架构师等身份担任大型公司工业、金融、自动化、服务部门的独立顾问。 他发表过不少关于Oracle的文章, 在每年德国举行的Oracle用户组会议及许多商品交易会上公开宣讲Oracle技术。 他与人合著过两本关于Oracle9i的书。

蒋海鸥 华中科技大学计算机系统结构硕士, 系统分析师、信息系统项目管理师, 获得MySQL DBA认证, 现就职于百度网页搜索部。

李浩 华中科技大学计算机系统结构硕士, 专注于分布式存储系统的设计与实现, 现从事数据挖掘相关工作。

金海 华中科技大学教授、博士生导师, 长江学者特聘教授, 华中科技大学计算机学院院长。

图书目录

第一部分 初始化参数

第1章 在文档中部分说明的参数 2

1.1 AUDIT_SYSLOG_LEVEL 2

1.1.1 syslog设备 2

1.1.2 审计简介 3

1.1.3 使用AUDIT_SYSLOG_LEVEL参数 4

1.1.4 审计非特权用户 5

1.1.5 小结 6

1.2 PGA_AGGREGATE_TARGET 6

1.2.1 自动PGA内存管理介绍 7

1.2.2 对PGA_AGGREGATE_TARGET的误解 8

1.2.3 研究PGA_AGGREGATE_TARGET 9

1.2.4 使用管道表函数创建一个大表 9

1.2.5 V$SQL_WORKAREA_ACTIVE 10

1.2.6 _PGA_MAX_SIZE 14

1.2.7 _SMM_MAX_SIZE 15

1.2.8 _SMM_PX_MAX_SIZE 15

1.2.9 共享服务器 15

1.2.10 并行执行 16

1.2.11 小结 17

1.3 EVENT 18

1.3.1 语法 18

1.3.2 在实例级别均衡事件 19

1.3.3 案例研究 19

1.4 OS_AUTHENT_PREFIX 19

1.4.1 OPS$数据库用户及密码文件身份认证 20

1.4.2 案例研究 20

1.4.3 小结 23

1.5 源代码库 23

第2章 隐藏的初始化参数 24

2.1 跟踪文件权限与_TRACE_FILES_PUBLIC参数 24

2.2 ASM测试环境与_ASM_ALLOW_ONLY_RAW_DISKS参数 26

2.2.1 ASM隐藏参数 26

2.2.2 为ASM配置Oracle集群件 27

2.2.3 ASM实例设置 28

2.2.4 磁盘失效模拟 31

2.3 源代码库 31

第二部分 数据字典基表

第3章 数据字典基表介绍 34

第4章 IND$、V$OBJECT_USAGE和索引监控 38

4.1 模式限制 38

4.2 索引使用监控案例研究 39

4.2.1 MONITOR_SCHEMA_INDEXES函数 40

4.2.2 为HR模式启动索引监控 40

4.2.3 小结 44

4.3 源代码库 45

第三部分 事件

第5章 10027事件和死锁诊断 48

5.1 死锁 48

5.2 10027事件 49

第6章 10046事件和扩展SQL跟踪 52

第7章 10053事件和基于成本的优化器 54

7.1 跟踪文件的内容 57

7.2 案例研究 57

7.2.1 查询块和对象标识符 58

7.2.2 考虑的查询转换 58

7.2.3 说明 60

7.2.4 绑定变量窥视的结果 61

7.2.5 优化器参数 61

7.2.6 系统统计信息 66

7.2.7 表和索引的对象统计信息 67

7.2.8 单表访问路径和成本 68

7.2.9 联结顺序 70

7.2.10 执行计划 73

7.2.11 谓词信息 74

7.2.12 提示和查询块名称 74

7.3 源代码库 75

第8章 10079事件和Oracle网络数据包的内容 76

第四部分 X$固定表

第9章 X$固定表介绍 80

9.1 X$固定表与C语言编程 80

9.2 分层系统结构 81

9.3 授权访问X$表与V$视图 82

9.4 从V$视图深入剖析X$固定表 83

9.5 X$表与V$视图之间的关系 88

9.6 源代码库 89

第10章 X$BH表及闩锁争用 90

第11章 X$KSLED以及增强的会话等待数据 96

11.1 深度探讨视图V$SESSION_WAIT 96

11.2 改进的V$SESSION_WAIT视图 97

11.3 源代码库 100

第12章 X$KFFXP与ASM元数据 101

12.1 固定表X$KFFXP 101

12.2 抢救SPFILE文件 102

12.3 映射数据段到ASM存储 104

第五部分 SQL语句

第13章 ALTER SESSION/SYSTEMSET EVENTS 108

13.1 跟踪你自己的会话 108

13.2 ALTER SESSION SET EVENTS 109

13.3 ALTER SYSTEM SET EVENTS 110

13.4 ALTER SESSION/SYSTEM SETEVENTS和诊断转储 111

13.5 立即转储 112

第14章 ALTER SESSION SETCURRENT_SCHEMA 113

14.1 特权用户与模式用户 113

14.2 ALTER SESSION SET CURRENT_SCHEMA限制 115

14.2.1 高级队列 116

14.2.2 RENAME 116

14.2.3 私有数据库链接 117

14.2.4 存储概要 118

第15章 ALTER USER IDENTIFIED BYVALUES 119

15.1 密码游戏 119

15.2 用ALTER USER IDENTIFIED BYVALUES锁定账户 121

15.3 ALTER USER和未加密的密码 122

第16章 SELECT FOR UPDATE SKIPLOCKED 124

16.1 高级队列 124

16.2 Contention和SELECT FOR UPDATESKIP LOCKED 126

16.3 DBMS_LOCK——题外话 133

16.4 源代码库 136

第六部分 提供的PL/SQL程序包

第17章 DBMS_BACKUP_RESTORE 138

17.1 恢复管理器 138

17.2 TDPO灾难恢复案例研究 142

17.3 源代码库 144

第18章 DBMS_IJOB 145

18.1 介绍DBMS_JOB 145

18.2 BROKEN过程 145

18.2.1 语法 145

18.2.2 参数 146

18.2.3 使用说明 146

18.2.4 范例 146

18.3 FULL_EXPORT过程 146

18.3.1 语法 147

18.3.2 参数 147

18.3.3 范例 147

18.4 REMOVE过程 148

18.4.1 语法 148

18.4.2 参数 148

18.4.3 范例 148

18.5 RUN过程 148

18.5.1 语法 148

18.5.2 参数 148

18.5.3 使用说明 149

18.5.4 范例 149

18.6 源代码库 150

第19章 DBMS_SCHEDULER 151

19.1 使用数据库调度器运行外部作业 151

19.1.1 退出代码处理 152

19.1.2 标准错误输出 153

19.2 UNIX系统上的外部作业 155

19.2.1 清除环境变量 155

19.2.2 命令行处理 157

19.2.3 外部作业与非特权用户 159

19.3 Windows系统上的外部作业 161

19.3.1 命令行参数处理 161

19.3.2 Windows环境变量 162

19.3.3 外部作业与非特权用户 163

19.3.4 ORADIM实用工具创建的服务 163

19.3.5 OracleJobScheduler服务 163

19.4 源代码库 164

第20章 DBMS_SYSTEM 165

20.1 GET_ENV过程 165

20.1.1 语法 165

20.1.2 参数 165

20.1.3 使用说明 166

20.1.4 范例 166

20.2 KCFRMS过程 166

20.2.1 语法 166

20.2.2 使用说明 166

20.2.3 范例 166

20.3 KSDDDT过程 168

20.3.1 语法 168

20.3.2 使用说明 168

20.3.3 范例 168

20.4 KSDFLS过程 169

20.4.1 语法 169

20.4.2 使用说明 169

20.4.3 范例 169

20.5 KSDIND过程 169

20.5.1 语法 169

20.5.2 参数 169

20.5.3 使用说明 169

20.5.4 范例 170

20.6 KSDWRT过程 170

20.6.1 语法 170

20.6.2 参数 170

20.6.3 使用说明 170

20.6.4 范例 171

20.7 READ_EV过程 171

20.7.1 语法 171

20.7.2 参数 172

20.7.3 使用说明 172

20.7.4 范例 172

20.8 SET_INT_PARAM_IN_SESSION过程 172

20.8.1 语法 173

20.8.2 参数 173

20.8.3 使用说明 173

20.8.4 示例 173

20.9 SET_BOOL_PARAM_IN_SESSION过程 174

20.9.1 语法 174

20.9.2 参数 174

20.9.3 使用说明 174

20.9.4 示例 174

20.10 SET_EV过程 175

20.10.1 语法 175

20.10.2 参数 175

20.10.3 使用说明 175

20.10.4 范例 175

20.11 SET_SQL_TRACE_IN_SESSION转储 177

20.11.1 语法 177

20.11.2 参数 177

20.11.3 使用说明 177

20.11.4 范例 177

20.12 WAIT_FOR_EVENT过程 177

20.12.1 语法 177

20.12.2 参数 178

20.12.3 使用说明 178

20.12.4 范例 178

第21章 DBMS_UTILITY 179

21.1 NAME_RESOLVE过程 179

21.1.1 语法 179

21.1.2 参数 180

21.1.3 使用说明 181

21.1.4 异常 181

21.1.5 范例 181

21.2 对象统计信息的名称解析和提取 183

21.3 源代码库 185

第七部分 应用程序开发

第22章 Perl DBI与DBD::Oracle 188

22.1 常见的Perl DBI陷阱 188

22.2 Perl与DBI简史 189

22.3 为Perl与DBI设置环境变量 189

22.3.1 UNIX环境 189

22.3.2 Windows环境 194

22.4 在UNIX系统上透明地运行Perl程序 196

22.5 在Windows系统上透明地运行Perl程序 197

22.6 连接到一个ORACLE DBMS实例 199

22.6.1 DBI连接语法 199

22.6.2 使用Bequeath适配器连接 200

22.6.3 使用IPC适配器连接 201

22.6.4 通过TCP/IP适配器连接 202

22.6.5 简易连接 203

22.6.6 使用SYSDBA或SYSOPER特权连接 203

22.6.7 使用操作系统认证连接 204

22.6.8 连接属性 205

22.7 完整Perl DBI示例程序 206

22.8 异常处理 210

22.9 源代码库 211

第23章 应用程序插桩及端到端跟踪 212

23.1 插桩简介 212

23.2 案例研究 214

23.3 程序编译 216

23.4 插桩的运行 217

23.5 TRCSESS的使用 221

23.6 插桩与程序调用栈 226

23.7 源代码库 227

第八部分 性能

第24章 扩展SQL跟踪文件格式参考 230

24.1 扩展SQL跟踪文件介绍 230

24.2 SQL和PL/SQL语句 231

24.3 递归调用深度 231

24.4 数据库调用 232

24.4.1 解析 232

24.4.2 PARSING IN CURSOR条目的格式 233

24.4.3 PARSE条目的格式 235

24.4.4 PARSE ERROR条目的格式 236

24.4.5 EXEC条目的格式 236

24.4.6 FETCH条目的格式 236

24.4.7 执行计划散列值 237

24.4.8 计划散列值案例研究 237

24.4.9 CLOSE条目的格式 240

24.5 COMMIT与ROLLBACK 241

24.6 UNMAP 242

24.7 执行计划、统计信息与STAT条目的格式 242

24.7.1 Oracle9i中STAT条目的格式 243

24.7.2 Oracle10g和Oracle11g中STAT条目的格式 243

24.8 等待事件 245

24.8.1 WAIT条目的格式 245

24.8.2 Oracle9i中的WAIT 246

24.8.3 Oracle10g和Oracle11g中的WAIT 246

24.9 绑定变量 247

24.9.1 BINDS条目的格式 247

24.9.2 语句调优、执行计划以及绑定变量 251

24.10 跟踪文件条目其他项 257

24.10.1 会话标识符 257

24.10.2 服务名称ID 258

24.10.3 应用程序插桩 259

24.10.4 ERROR条目的格式 261

24.10.5 应用程序插桩与并行执行进程 263

第25章 Statspack 265

25.1 Statspack介绍 265

25.1.1 检索捕获到的SQL语句文本 267

25.1.2 访问STATS$SQLTEXT 270

25.1.3 使用保留格式捕获SQL语句 275

25.2 未在文档中说明的Statspack报告参数 277

25.3 Statspack表 278

25.4 找出Statspack库中代价高的语句 281

25.5 识别使用过的索引 281

25.6 SQL Trace捕获语句的执行计划 282

25.7 找出高资源利用率的快照 284

25.7.1 高CPU使用 285

25.7.2 高DB时间 287

25.8 从另一数据库导入Statspack数据 290

25.9 源代码库 292

第26章 整合扩展SQL跟踪和AWR 294

26.1 检索执行计划 294

26.2 小结 296

26.3 源代码库 297

第27章 ESQLTRCPROF扩展SQL跟踪分析器 298

27.1 分类等待事件 298

27.2 计算响应时间和统计信息 299

27.2.1 案例研究 300

27.2.2 运行Perl程序 301

27.2.3 计算统计信息 303

27.2.4 计算响应时间 303

27.3 ESQLTRCPROF参考 304

27.3.1 命令行选项 305

27.3.2 ESQLTRCPROF报告部分 306

27.4 小结 314

27.5 源代码库 315

第28章 MERITS性能优化方法 316

28.1 MERITS方法简介 316

28.2 测量 317

28.3 评估 321

28.4 重现 323

28.5 改进 323

28.6 推断 324

28.7 安装 324

28.8 MERITS方法案例研究 325

28.8.1 阶段1——测量 325

28.8.2 阶段2——评估 325

28.8.3 阶段3——重现 332

28.8.4 阶段4——改进 335

28.8.5 阶段5——推断 339

28.8.6 阶段6——安装 339

28.8.7 小结 339

28.9 源代码库 340

第九部分 Oracle Net

第29章 TNS监听器IP地址绑定与IP=FIRST 342

29.1 IP地址绑定介绍 342

29.2 多宿主系统 344

29.3 IP=FIRST未启用 345

29.3.1 主机名 346

29.3.2 回环适配器 347

29.3.3 引导IP地址 348

29.3.4 服务IP地址 348

29.4 IP=FIRST开启 349

29.5 小结 350

第30章 TNS监听器TCP/IP有效结点检验 351

30.1 有效结点检验简介 351

30.2 在运行时打开和修改有效结点检验 353

第31章 本地命名参数ENABLE=BROKEN 356

第32章 Oracle Net配置中默认的主机名 359

32.1 默认主机名 359

32.2 关闭默认监听器 360

第十部分 实时应用集群

第33章 会话断开连接、负载均衡与TAF 364

33.1 透明应用故障转移介绍 364

33.2 改变系统断开会话设置 365

33.2.1 SELECT故障转移 366

33.2.2 在事务末的故障转移 369

33.3 会话中断和DBMS_SERVICE 371

33.3.1 使用DBMS_SERVICE创建服务 372

33.3.2 DBMS_SERVICE和TAF下的会话中断 374

33.4 小结 376

33.5 源代码库 376

第34章 不重装就移除RAC选项 377

34.1 连接ORACLE软件 377

34.2 案例研究 378

34.2.1 模拟表决磁盘失效 379

34.2.2 使用make工具移除RAC可选项 381

34.2.3 转换CRS环境为本地环境 383

34.2.4 重启适用于RAC的CRS环境 385

34.3 小结 386

第十一部分 实用工具

第35章 OERR 388

35.1 OERR脚本介绍 388

35.2 检索未在文档中说明的事件 390

35.3 源代码库 392

第36章 数据恢复管理器管道接口 393

36.1 数据恢复管理介绍 393

36.2 DBMS_PIPE介绍 394

36.3 RMAN_PIPE_IF包 395

36.4 RMAN_PIPE_IF包详述 395

36.5 使用RMAN_PIPE_IF包 396

36.6 验证备份块 401

36.7 跨节点并行备份与恢复 402

36.8 源码库 403

第37章 ORADEBUG SQL*Plus命令 404

37.1 ORADEBUG介绍 404

37.2 ORADEBUG使用步骤 405

37.3 ORADEBUG命令介绍 405

37.3.1 连接到一个进程 406

37.3.2 ORADEBUG IPC 408

37.3.3 ORADEBUG SHORT_STACK 409

37.3.4 诊断转储 410

37.4 小结 414

第十二部分 附录

附录A 启用和禁用DBMS可选项 416

附录B 参考书目 417

附录C 术语表 419

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/23 22:32:23