专家精讲:ORACLE数据库管理与维护(开发专家之数据库)
分類: 图书,计算机与互联网,数据库,Oracle,
品牌: 张天慧
基本信息·出版社:电子工业出版社
·页码:420 页
·出版日期:2009年
·ISBN:7121079291/9787121079290
·条形码:9787121079290
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:开发专家之数据库
产品信息有问题吗?请帮我们更新产品信息。
内容简介《专家精讲:Oracle数据库管理与维护》以笔者多年积累的实际经验分析数据库管理员的工作职责。详细介绍Oracle数据库系统的运作原理与组成架构;针对常用的“基本对象”及延伸应用的“高可用性对象”提供详尽说明;详解Oracle数据库的安装、建置,以及安全认证方式;深入剖析Oracle的网络联机架构与设定,包含各类“网络服务组态文件”;详细介绍Oracle数据库的备份与恢复,并列举多项功能强大的复原管理工具;针对数据库、实体结构与Instance讲解性能调试的重要性,并以实例示范;解析Oracle Statspack及Oracle Optimizer;完整说明索引与SQL语法的有效运用。
《专家精讲:Oracle数据库管理与维护》适合数据库开发人员参考学习,也可作为高等院校相关专业师生的参考书。
作者简介张天慧,现任职华硕集团昌硕科技(上海)有限公司DBA,曾任华硕电脑DBA、NCR专业顾问、台湾积体电路约聘DBA、远传电信DBA,以及和信电信DBA,具有美商甲骨文OCP(Oracle Certified Pro.fessional)认证资格,并拥有8年以上数据库开发与DBA经验。Oracle数据库管理、备份与复原、性能调优SQL Serve数据库管理、备份与复原、性能调优Teradata数据库仓储管理Linux/UNIX系统管理。
编辑推荐Oracle作为世界级知名的企业级数据库软件,其用户市场涵盖全球各行各业。《专家精讲:Oracle数据库管理与维护》是不可多得的Oracle实务指南。分析数据库管理员的工作职责与权利义务。
目录
第1篇 数据库管理员的角色与职责
第1章 数据库管理员的工作内容 3
1.1 数据库管理员的种类及定位 4
1.1.1 数据库管理员的类型 4
1.1.2 数据库管理员的定位 5
1.2 数据库管理员的工作内容 7
1.3 数据库管理员应该具备的认知与特性 10
1.4 结束语 12
第2章 Oracle数据库管理员的工作清单 13
2.1 Oracle数据库概论 14
2.1.1 Oracle数据库结构 15
2.1.2 Oracle实例 16
2.2 每日例行工作 16
2.3 每周例行工作 21
2.4 每月例行工作 23
2.5 结束语 27
第2篇 Oracle数据库的结构与操作
第3章 Oracle数据库结构 31
3.1 物理存储结构 32
3.1.1 数据文件 32
3.1.2 在线重作日志文件 34
3.1.3 初始化参数文件 41
3.1.4 控制文件 46
3.1.5 口令文件 52
3.1.6 归档日志文件 54
3.1.7 警告日志文件与跟踪文件 63
3.2 逻辑存储结构 64
3.2.1 表空间 65
3.2.2 段 79
3.2.3 区(Extent) 80
3.2.4 数据块 80
3.3 结束语 82
第4章 Oracle实例 83
4.1 系统全局区 85
4.1.1 数据缓冲区 85
4.1.2 重作日志缓冲区 88
4.1.3 共享池 88
4.1.4 其他共享池 90
4.2 后台进程 91
4.2.1 DBWRn 92
4.2.2 LGWR 94
4.2.3 SMON 95
4.2.4 PMON 95
4.2.5 CKPT 96
4.2.6 ARCn 97
4.3 其他进程 97
4.3.1 User Process 97
4.3.2 Server Process 98
4.3.3 PGA 98
4.4 结束语 101
第5章 Oracle基本对象 103
5.1 模式 104
5.2 表 105
5.2.1 数据行 106
5.2.2 数据列 106
5.2.3 ROWID 108
5.2.4 创建表 109
5.2.5 管理表 115
5.2.6 完整性限制 139
5.3 视图 142
5.4 索引 143
5.4.1 索引结构 144
5.4.2 创建索引 149
5.4.3 管理索引 155
5.4.4 查询索引相关信息 158
5.5 还原段 158
5.5.1 还原段的功能 159
5.5.2 还原段的种类与管理模式 160
5.5.3 创建与启用还原段 162
5.5.4 管理还原段 165
5.5.5 查询还原段相关信息 167
5.5.6 还原段注意事项 167
5.6 序列 168
5.6.1 创建与使用序列 169
5.6.2 管理序列 171
5.7 数据库链接 172
5.8 同义词 175
5.8.1 同义词注意事项 176
5.8.2 创建与维护同义词 176
5.9 概要文件 178
5.10 用户 181
5.10.1 创建与维护用户 181
5.10.2 权限的授予 184
5.11 角色 185
5.12 数据库字典与动态性能视图 188
5.12.1 数据库字典 189
5.12.2 动态性能视图 190
5.13 结束语 190
第6章 Oracle高可用性对象 191
6.1 分区表 192
6.1.1 范围分区 193
6.1.2 哈希分区 194
6.1.3 列表分区 195
6.1.4 复合分区 195
6.1.5 创建与维护分区表 196
6.2 聚簇表 197
6.2.1 索引聚簇表 198
6.2.2 哈希聚簇表 200
6.2.3 管理聚簇 201
6.3 全局临时表 202
6.4 索引组织表 203
6.5 结束语 204
第7章 Oracle软件安装、数据库创建与网络架构 205
7.1 Oracle软件安装 206
7.1.1 软件安装程序 206
7.1.2 Oracle数据库最佳弹性架构 214
7.2 Oracle数据库安全认证方式 216
7.3 数据库的启动与关闭 220
7.3.1 启动数据库 220
7.3.2 关闭数据库 226
7.4 创建Oracle数据库 228
7.4.1 创建数据库前准备事项 229
7.4.2 手动创建Oracle数据库 229
7.4.3 使用DBCA创建数据库 232
7.5 Oracle网络服务架构与设置 241
7.5.1 设定listener.ora网络服务配置文件 242
7.5.2 设定tnsnames.ora网络服务配置文件 245
7.5.3 设定sqlnet.ora网络服务配置文件 247
7.5.4 Oracle网络服务联机运作方式 247
7.5.5 Oracle网络服务名称解析方式 252
7.6 结束语 254
第3篇 Oracle数据库的备份与恢复
第8章 Oracle的备份与恢复 257
8.1 Oracle数据库备份模式 258
8.1.1 逻辑备份 258
8.1.2 物理备份 258
8.1.3 Oracle恢复管理程序 259
8.1.4 基本备份模式之外的补充 259
8.2 规划备份计划与恢复操作 261
8.3 导出与导入 262
8.3.1 导出 264
8.3.2 导入 267
8.3.3 活用导入与导出 268
8.3.4 导入与导出注意事项 270
8.3.5 Data Pump导出与导入 271
8.4 离线备份 275
8.5 在线备份 275
8.6 数据库恢复操作 276
8.6.1 对数据库执行恢复操作 276
8.6.2 对表空间执行恢复操作 278
8.6.3 对数据文件执行恢复操作 279
8.6.4 其他方式恢复操作 282
8.7 结束语 283
第9章 RMAN恢复管理程序 285
9.1 启用RMAN恢复管理程序 288
9.2 执行RMAN备份操作 289
9.3 执行RMAN恢复操作 292
9.4 结束语 293
第10章 Oracle Data Guard 295
10.1 Oracle Data Guard基本架构 296
10.2 Oracle Data Guard运行原理 297
10.2.1 备用数据库的两种形态 298
10.2.2 Oracle Data Guard的3种模式 299
10.3 创建Oracle Data Guard 301
10.3.1 主要数据库准备事项 301
10.3.2 创建备用数据库 302
10.4 Oracle Data Guard维护与注意事项 305
10.5 结束语 306
第11章 其他高可用性备份与恢复工具 307
11.1 Oracle快闪恢复 308
11.2 Oracle复制 310
11.2.1 Oracle Replication的架构与种类 311
11.2.2 创建Oracle物化视图复制 312
11.3 结束语 315
第4篇 Oracle数据库基础性能调优
第12章 数据库性能调优 319
12.1 性能调优的步骤 320
12.2 性能调优的范围与效益 325
12.2.1 系统环境调优 325
12.2.2 Oracle Instance调优 326
12.2.3 Oracle对象调优 326
12.2.4 SQL语法调优 326
12.3 Oracle数据库与磁盘阵列 327
12.3.1 磁盘阵列的种类 328
12.3.2 Oracle数据库文件与磁盘阵列的放置方式 331
12.4 结束语 332
第13章 Instance性能调优 333
13.1 数据缓冲区性能调优 334
13.1.1 数据缓冲区的运行状况 335
13.1.2 数据缓冲区调优目标 338
13.1.3 数据缓冲区命中率 339
13.1.4 数据缓冲区分区管理 339
13.1.5 LRU Latch 344
13.2 共享池性能调优 346
13.2.1 共享池的运行情况 346
13.2.2 检查与调优共享池 347
13.3 重作日志缓冲区性能调优 348
13.3.1 重作日志缓冲区的运行情况 349
13.3.2 重作日志缓冲区调优目标 350
13.4 结束语 352
第14章 物理结构性能调优 353
14.1 如何准确设置数据块 354
14.2 如何准确设置存储参数 355
14.3 如何准确设置表空间 356
14.4 表空间碎片 356
14.5 结束语 358
第15章 Oracle Statspack 359
15.1 安装Oracle Statspack 360
15.2 启动与停止Oracle Statspack 361
15.3 修正Oracle Statspack设置 364
15.4 解析Oracle Statspack报表 365
15.5 结束语 368
第5篇 Oracle数据库SQL性能调优
第16章 解析Oracle Optimizer 371
16.1 Oracle Optimizer概述 372
16.2 Rule Base Optimizer 374
16.3 Cost Base Optimizer 376
16.4 Optimizer的模式 377
16.5 追踪SQL语法的运行与执行统计数据 380
16.5.1 SQL TRACE 381
16.5.2 AUTOTRACE 383
16.6 结束语 385
第17章 Oracle数据存取与表连接模式 387
17.1 Oracle基本数据存取模式 388
17.1.1 全表扫描 388
17.1.2 索引扫描 389
17.1.3 指定ROWID 390
17.2 表连接方式 390
17.2.1 嵌套循环表连接 390
17.2.2 排序/结合表连接 391
17.2.3 哈希表连接 392
17.2.4 各种表连接的特性 393
17.3 结束语 393
第18章 索引的使用 395
18.1 索引的存取模式 396
18.1.1 Index Unique Scan 396
18.1.2 Index Range Scan 396
18.1.3 Index Full Scan 397
18.1.4 Index Fast Full Scan 398
18.1.5 Index Skip Scan 398
18.2 使用索引的正确方向 399
18.3 结束语 400
第19章 如何正确使用SQL语法 401
19.1 如何避免没必要的全表扫描 402
19.1.1 避免在索引字段上使用IS NULL与IS NOT NULL条件 402
19.1.2 尽量不使用“!=”来筛选数据 403
19.1.3 不适当的函数运算 403
19.1.4 尽量不使用“||”来筛选数据 404
19.1.5 避免在索引所在的字段上使用NOT 404
19.1.6 如何使用LIKE条件式 405
19.1.7 复合索引的盲点 406
19.2 避免没有效率的查询 407
19.2.1 没有效率的索引 407
19.2.2 没有效率的条件式 409
19.3 提升性能其他注意事项 410
19.4 结束语 410
附录A Oracle RMAN范例 411
附录B 常用的管理与性能调优SQL语法 413
……[看更多目录]
序言从事了约8年与Oracle DBA相关的工作,在学习的过程中,不断地自我摸索与尝试。在这段历程中,我发现市面上可参考的书籍大多是Oracle数据库的基本介绍,关于DBA日常的整体应用与管理都鲜少着墨,因而有了写这本书的动机。
个人希望能将这些年从事DBA工作所累积的经验与技能进行整理并与大家分享,为了让更多想进入Oracle 数据库领域的朋友能够快速掌握Oracle数据库管理技术,同时,无论是有经验的Oracle DBA、新手Oracle DBA,还是程序开发人员都能够持续地深入学习。
我常会
文摘Oracle基本的架构是由数据库(Database)和实例(Instance)组合而成的。在Oracle中,数据库指的是数据实际存放的地方,不论数据库是处于开启还是关闭的状态,永远都会存在于操作系统上;而实例指的是在计算机的一块内存空间提供使用者做数据库上数据存取或数据交换的地方,由于这块空间放在内存中,因此,会随着数据库的开启而建构起来,当数据库关闭时,实例也就随之消失。这样解释可能太抽象,举一个实际的例子来说明,使用者与实体结构就好比两座小岛,而实例好比通往这两座小岛的桥梁,车辆的进出就像是数据的存取或交换,如果今天桥梁关闭或损毁了,但小岛依然是存在的,只是车辆无法自这两座小岛进出了,一旦当桥梁恢复,车辆又可继续通行两边。简单来说,实例是暂时的,而数据库则是永久存在的,数据库和实例的定义如下,Oracle的组成架构如图2-1所示。
插图: