第1章 Oracle9i系统概述 1
1.1 数据库和数据库系统概述 1
1.1.1 数据库基本知识 1
1.1.2 关系型数据库系统 3
1.2 Oracle公司和Oracle9i数据库系统 7
1.2.1 服务器的独特性能 8
1.2.2 服务器的各种组件 9
1.3 Oracle Enterprise Manager体系结构 10
1.5 Oracle9i的新特性 15
1.4 Oracle系统的特点 15
第2章 Oracle9i的安装 23
2.1 安装前的准备 23
2.1.1 安装类型的系统需求 23
2.1.2 数据库迁移与升级需求 27
2.2 安装Oracle9i数据库系统 28
2.2.1 创建方法和网络配置方法 28
2.2.2 使用Oracle9i UI安装 30
2.3 使用Oracle管理工具 36
2.3.1 进入OMS 36
2.3.2 OEM、OMS功能简介 41
2.3.3 OMS使用简介 45
3.1 存储结构简介 47
3.1.1 存储结构分类 47
第3章 Oracle数据库结构 47
3.1.2 两种存储结构之间的关系 48
3.2 物理存储结构 50
3.2.1 数据文件 50
3.2.2 记录文件 50
3.2.3 参数文件 51
3.2.4 控制文件 53
3.3.2 表 54
3.3 逻辑存储结构 54
3.3.1 表空间 54
3.3.3 数据段 55
3.3.4 数据区 61
3.3.5 数据块 61
3.3.6 其他数据库逻辑存储结构 65
3.4 数据字典 67
3.4.1 数据字典概述 67
3.4.2 数据字典表 67
3.4.4 动态性能表和动态性能视图 68
3.4.3 数据字典视图 68
3.4.5 数据对象元数据 69
3.4.6 最有用的DBA和V$视图 69
第4章 实例和数据库 73
4.1 Oracle实例简介 73
4.1.1 实例和数据库的关系 74
4.1.2 与数据库管理员权限相联系 74
4.1.3 初始化参数文件 75
4.2 内存结构和进程 76
4.2.1 进程体系 76
4.2.2 后台进程 77
4.2.3 Oracle内存区 81
4.2.4 内存结构和进程的工作方式 84
4.3 数据库和实例的启动 87
4.3.1 启动数据库实例的方法 87
4.3.2 连接到Oracle 87
4.3.3 使用SQL*Plus启动数据库实例 88
4.3.4 启动实例:各种模式 89
4.4 改变数据库的状态 90
4.4.4 限制对打开的数据库访问 91
4.4.3 以只读模式打开数据库 91
4.4.2 打开一个关闭的数据库 91
4.4.1 为实例装载数据库 91
4.5 数据库和实例的关闭 92
4.5.1 用NORMAL选项关闭数据库 92
4.5.2 用IMMEDIATE选项关闭数据库 92
4.5.3 用TRANSACTIONAL选项关闭数据库 93
4.5.4 用ABORT选项关闭数据库 93
4.5.5 关闭远程数据库和实例 94
4.6 禁止操作数据库 94
4.6.3 查看实例的禁止操作状态 95
4.6.2 将系统还原为Normal操作状态 95
4.6.1 将数据库置于静止状态 95
4.7 暂停和继续数据库 96
第5章 SQL基础 97
5.1 SQL语言概述 97
5.1.1 SQL语言术语 97
5.1.2 SQL语言分类 98
5.1.3 SQL语言在Oracle中的使用环境 99
5.2 创建数据库表和使用数据类型 102
5.2.1 创建表 102
5.2.2 数据类型 103
5.2.3 NULL和NOT NULL 104
5.2.4 创建和使用约束 105
5.2.5 用INSERT语句添加数据 109
5.3 检索数据 110
5.3.1 使用FROM子句指定表 111
5.3.2 使用SELECT(必要元素)指定列 111
5.3.3 使用WHERE子句指定行 112
5.3.4 使用ORDER BY子句 118
5.3.5 使用DISTINCT来检索惟一的表列值 120
5.3.7 使用GROUP BY子句 121
5.3.6 使用算术运算符 121
5.3.8 使用子查询 122
5.4 描述语句 123
5.5 添加、改变和删除表中信息 124
5.5.1 添加行 124
5.5.2 改变行中的数据 124
5.5.3 删除行 125
5.5.4 改变列 125
5.6 实施关系连接 127
5.7 使用UNION语句合并查询结果 130
6.1.1 数字型数据和数学函数 135
第6章 SQL高级应用 135
6.1 函数和数据类型 135
6.1.2 字符型数据和字符串函数 137
6.1.3 日期型数据和日期函数 138
6.2 管理索引 139
6.2.1 使用索引的原则 139
6.2.2 创建索引 140
6.2.3 更改索引 141
6.2.5 删除索引 142
6.2.6 查看索引信息 142
6.2.4 监视索引的空间使用 142
6.3 管理分区表和分区索引 143
6.3.1 分区的方法 143
6.3.2 维护分区 146
6.3.3 查看分区信息 148
6.4 管理簇 149
6.4.1 创建簇 150
6.4.2 更改簇 150
6.4.3 删除簇 150
6.5.1 管理视图 151
6.4.4 查看簇信息 151
6.5 管理视图、序列和同义词 151
6.5.2 管理序列 152
6.5.3 管理同义词 153
6.5.4 查看视图、序列和同义词信息 153
第7章 PL/SQL基础 155
7.1 PL/SQL概述 155
7.1.1 PL/SQL语言 155
7.1.2 PL/SQL的特点 158
7.1.3 PL/SQL的开发和运行环境 159
7.1.4 运行PL/SQL程序 161
7.2 PL/SQL编程 162
7.2.1 基本语言块 162
7.2.2 字符集和语法注释 163
7.2.3 数据类型和类型转化 165
7.2.4 变量和常量 169
7.2.5 表达式和运算符 171
7.2.6 流程控制 173
7.3 过程和函数 180
7.3.1 过程 181
7.3.2 函数 183
7.3.3 使用OEM创建过程和函数 185
7.4 错误处理 188
7.4.1 预定义异常 188
7.4.2 用户定义异常 190
第8章 PL/SQL高级应用 193
8.1 包 193
8.1.1 包头 193
8.1.2 包体 194
8.1.3 重载 198
8.1.4 包的初始化 201
8.1.5 Oracle内置包 202
8.2 集合 203
8.2.1 index-by表 203
8.2.2 嵌套表 205
8.2.3 可变数组 206
8.2.4 集合的属性或方法 207
8.3 PL/SQL游标 211
8.3.1 游标创建 212
8.3.2 使用游标for循环 216
8.3.3 使用游标变量 219
8.3.4 游标变量实例 226
8.3.5 使用游标表达式 230
第9章 SQL*Plus 233
9.1 SQL*Plus概述 233
9.1.1 SQL*Plus的功能 233
9.1.2 运行SQL*Plus所需的条件 233
9.2 SQL*Plus基础 234
9.2.1 启动SQL Plus 235
9.2.2 退出SQL Plus 235
9.2.3 输入和执行命令 235
9.3 SQL Plus使用指南 238
9.2.4 获取帮助 238
9.3.1 编辑命令 239
9.3.2 保存命令 241
9.3.3 加入注释 243
9.3.4 运行命令 244
9.3.5 编写交互式命令 245
9.3.6 使用绑定变量 253
9.3.7 跟踪语句 256
9.4 格式化查询结果 260
9.4.1 格式化列 261
9.4.2 使用空格和概述行阐明报告 265
9.4.3 定义页与报告的标题和维 271
9.4.4 存储和打印结果 278
9.4.5 创建Web报告 279
9.5 iSQL*Plus 280
9.5.1 iSQL*Plus简介 280
9.5.2 配置iSQL*Plus 281
9.5.3 iSQL*Plus用户接口 285
9.5.4 使用iSQL*Plus 286
10.1.1 创建数据库和数据库实例 293
第10章 Oracle9i数据库管理 293
10.1 使用OEM管理数据库 293
10.1.2 设置和调整数据库选项 303
10.1.3 删除数据库 308
10.2 管理表和表空间 309
10.2.1 创建表 309
10.2.2 调整表 322
10.2.3 创建表空间 323
10.2.4 调整表空间 327
10.3.1 视图管理 330
10.3 管理视图、索引和触发器 330
10.3.2 索引管理 337
10.3.3 触发器管理 340
10.4 管理其他数据库对象 345
第11章 数据完整和数据约束 349
11.1 事务的概念 349
11.2 数据的并行性和一致性 350
11.2.1 数据并行性和一致性概述 350
11.2.2 Oracle如何管理数据并行性和一致性 351
11.2.3 Flashback查询 354
11.3 锁 355
11.3.1 锁的功能 355
11.3.2 锁的分类 356
11.3.3 锁的类型 357
11.3.4 表锁和事务锁 358
11.3.5 实例分析 359
11.4 数据完整性 362
11.4.1 数据完整性概述 362
11.4.2 完整性约束 363
11.4.3 完整性约束类型 363
11.4.4 约束检验机制 369
11.4.5 约束状态 370
第12章 用户管理 373
12.1 控制数据存取 373
12.1.1 数据库安全性 373
12.1.2 框架和安全域 373
12.1.3 用户认证 374
12.1.4 用户表空间设置 377
12.1.5 用户组PUBLIC 377
12.2 用户管理 378
12.2.1 创建用户 378
12.1.6 用户资源限制 378
12.2.2 删除用户 382
12.2.3 修改用户信息 384
12.2.4 用户口令管理 385
12.3 权限和角色 387
12.3.1 角色 388
12.3.2 角色管理 390
12.3.3 权限管理 392
第13章 数据安全 403
13.1 数据字典和安全规则 403
13.1.1 使用数据字典视图查看用户、角色和权限 403
13.1.2 细致的访问控制 408
13.1.3 一个典型的权限分配方案 409
13.2 数据审计功能 413
13.2.1 审计概述 413
13.2.2 启用审计 414
13.2.3 语句审计 415
13.2.4 权限审计 415
13.2.5 方案对象审计 416
13.2.6 细致审计 416
13.2.7 审计多层环境 417
13.3.2 敏感标签 418
13.3.3 标签组件 418
13.3 Oracle标签安全 418
13.3.1 Oracle Label Security策略 418
13.3.4 外部表示 419
13.3.5 标签标记 419
13.3.6 Oracle9i Label Security用户标签授权 419
13.3.7 Oracle9i Label Security访问特权 420
13.3.8 策略强制选项 421
13.3.9 Oracle9i Label Security标签函数 421
13.3.11 其他注意事项 422
13.3.10 Oracle9i Label Security SQL谓词 422
第14章 备份和恢复 423
14.1 Oracle9i的备份与恢复 423
14.1.1 备份和恢复概述 423
14.1.2 Oracle9i的备份和恢复特性 424
14.2 数据丢失和备份恢复策略 426
14.2.1 数据丢失和挽救措施 426
14.2.2 备份原则 428
14.2.3 备份策略 429
14.2.4 恢复原则和策略 430
14.3.1 冷物理备份和恢复 433
14.3 物理数据备份和恢复 433
14.3.2 热物理备份和恢复 438
14.3.3 不完全恢复 441
14.4 逻辑数据备份和恢复 443
14.4.1 逻辑数据备份和恢复的方法 443
14.4.2 在OMS下导出和导入数据 450
14.5 规划备份与恢复 460
14.6 测试策略 462
第15章 使用RMAN工具 463
15.1 RMAN工具简介 463
15.2.1 连接RMAN 464
15.2 RMAN工具的使用 464
15.2.2 RMAN命令简介 466
15.2.3 使用RMAN进行数据备份 469
15.2.4 使用RMAN进行数据恢复 477
15.3 使用OMS工具实现备份与恢复 480
15.3.1 备份向导 481
15.3.2 数据恢复 486
15.4 使用OMS创建备份配置 489
16.1 Oracle网络服务和体系结构 495
16.1.1 Oracle网络服务概述 495
第16章 Oracle9i网络服务 495
16.1.2 Oracle网络堆栈通信体系结构 496
16.1.3 侦听器体系结构 497
16.1.4 数据库服务进程结构 499
16.1.5 Oracle连接管理器体系结构 501
16.1.6 完整的体系结构 502
16.2 vOracle9i网络服务方案 503
16.2.1 电子商务模型 503
16.2.2 Oracle的网络解决方案 503
16.2.3 网络组件 510
16.3 Oracle9i中网络服务的新特性 512
16.4 连接和配置管理 513
16.4.1 数据库实例验证 514
16.4.2 服务可访问性 516
16.4.3 命名 517
16.4.4 配置模型 517
16.4.5 目录服务器支持 518
16.4.6 Oracle命名 520
16.5.1 Oracle网络管理器 522
16.5.2 Oracle网络配置助手 522
16.5 配置和管理工具概述 522
16.5.3 Oracle网络控制工具 523
16.6 规划网络 524
16.6.1 在组织内部配置网络 524
16.6.2 为Internet配置网络 525
16.6.3 命名考虑 526
16.7 配置和管理网络服务 527
16.7.1 配置和管理侦听器 527
16.7.2 配置命名方法 532
16.7.3 配置概要文件 537
16.7.4 配置命名服务器 541