第1章Oracle简介 1
1.1 Oracle发展历史 1
1.2 Oracle系统概述 2
1.2.1网格计算的概念 2
1.2.2 Oracle 11 g版本介绍 3
1.2.3 Oracle 11 g企业版的选件 3
1.3 Oracle体系概述 6
1.3.1数据库与实例 7
1.3.2 Oracle数据库服务器结构 7
1.4数据库结构 8
1.4.1物理结构 8
1.4.2逻辑结构 8
1.5实例结构 10
1.5.1内存结构 10
1.5.2进程结构 10
1.6连接数据库 11
1.6.1连接与会话 11
1.6.2连接模式 12
1.7 Oracle工具简介 12
1.7.1 Oracle管理工具 12
1.7.2 Oracle开发工具 13
第2章Oracle的安装 14
2.1安装前的准备 14
2.1.1下载Oracle软件 14
2.1.2查看硬件信息 14
2.1.3查看软件信息 15
2.1.4配置内核参数 20
2.1.5建立安装组和用户 21
2.1.6配置资源限制 21
2.1.7安装目录设置 21
2.1.8配置用户环境变量 21
2.1.9禁用SELinux 22
2.1.10关闭Linux防火墙 22
2.2安装Oracle Database 11 gR2 23
2.2.1解压安装文件 23
2.2.2允许图型安装界面 23
2.2.3执行OUI 23
2.2.4执行两个脚本 23
2.3查看、关闭和启动监听器 31
2.3.1查看数据库监听器状态 31
2.3.2关闭数据库监听器 32
2.3.3启动数据库监听器 32
2.4启动和关闭数据库实例 33
2.4.1启动数据库实例 33
2.4.2关闭数据库实例 34
2.5查看、停止和启动Oracle数据库控制台服务 34
2.5.1查看Oracle数据库控制台服务 34
2.5.2停止Oracle数据库控制台服务 35
2.5.3启动Oracle数据库控制台服务 35
2.6卸载Oracle llg 36
2.6.1卸载工具deinstall 36
2.6.2卸载实例 36
第3章SQLPlus 40
3.1启动及退出SQLPlus 40
3.1.1启动SQLPlus 40
3.1.2退出SQLPlus 41
3.1.3获取帮助信息 42
3.1.4获取版本信息 43
3.2使用SQL语言 43
3.3使用SQLPlus命令 44
3.3.1编辑命令 45
3.3.2调用操作系统编辑程序 47
3.3.3文件操作 47
3.3.4用HOST执行操作系统命令 48
3.3.5运行命令 49
3.3.6清除命令 50
3.3.7数据库相关命令 50
3.3.8 SPOOL命令 51
3.3.9 SET命令 51
3.3.10 SHOW命令 53
3.4运行PL/SQL块 54
3.4.1创建存储过程 54
3.4.2执行存储过程 55
第4章SQL Developer 56
4.1 SQL Developer安装 56
4.2 SQL Developer用户界面 57
4.3创建数据库连接 58
4.4创建新表 60
4.5更改表 62
4.6添加表约束 63
4.7向表中添加数据 64
4.8访问表中数据 65
4.9使用SQL工作表 66
4.10创建并编译PL/SQL过程 67
4.11运行PL/SQL过程 71
第5.章SQL概述 73
5.1 SQL的发展及标准 73
5.2 SQL简介 74
5.2.1 SQL的功能 74
5.2.2 SQL的特点 74
5.3 Oracle 11g的示例用户与模式 75
5.3.1 SCOTT用户 75
5.3.2 SCOTT模式 76
5.3.3 HR用户和HR模式 77
5.4 Oracle 11 g的数据类型 80
5.4.1字母数据的数据类型 80
5.4.2数字数据的数据类型 80
5.4.3日期和时间的数据类型 80
5.4.4大对象数据的数据类型 81
5.4.5 RAW和ROWID数据类型 81
5.4.6查看数据类型 82
5.5 SQL的书写规则 82
5.5.1大写字母或小写字母 82
5.5.2语句终止符 83
5.5.3缩进排版与可读性 83
第6章SQL的数据定义语言(DDL) 84
6.1表的DDL 84
6.1.1使用列规范创建表 84
6.1.2使用子查询创建表 86
6.1.3如何更改表的定义 87
6.1.4表的删除和截断 89
6.2索引的DDL 89
6.2.1索引的概念 89
6.2.2创建索引 91
6.2.3修改和删除索引 91
6.3视图的DDL 92
6.3.1视图的概念 92
6.3.2视图的建立 92
6.3.3视图的删除 93
6.3.4视图的修改 93
6.4同义词的DDL 94
6.4.1同义词的概念 94
6.4.2同义词的分类 94
6.4.3同义词的创建 94
6.4.4同义词的删除 95
6.4.5同义词的修改 95
6.5序列的DDL 95
6.5.1序列的概念 95
6.5.2序列的创建 96
6.5.3序列的使用 98
6.5.4序列的修改 98
6.5.5序列的删除 99
第7章SQL的数据查询语言(DQL) 100
7.1 SELECT的语法 100
7.2简单查询 100
7.2.1查询全部列 101
7.2.2查询指定列 101
7.2.3 DISTINCT关键字 102
7.2.4查询算术计算后的列 102
7.2.5列的别名 103
7.2.6 字符连接运算 104
7.3带条件查询 105
7.3.1比较运算符 105
7.3.2 BETWEEN运算符 106
7.3.3 IN运算符 107
7.3.4 LIKE运算符 108
7.3.5对空值的比较 109
7.3.6逻辑运算符 109
7.3.7运算符的优先顺序 111
7.4对结果进行排序 112
7.4.1按列名排序 112
7.4.2按位置排序 113
7.4.3混合排序 113
7.5单行函数 113
7.5.1字符函数 114
7.5.2数字函数 118
7.5.3日期函数 120
7.5.4转换函数 123
7.6分组函数 129
7.6.1分组的概念 129
7.6.2 COUNT函数 129
7.6.3 SUM函数 130
7.6.4 AVG函数 130
7.6.5 MAX和MIN函数 130
7.6.6 GROUP BY子句 130
7.6.7 HAVING短语 132
7.7连接查询 133
7.7.1等值与非等值连接查询 133
7.7.2自然连接查询 134
7.7.3自连接查询 135
7.7.4外连接查询 136
7.8子查询与集合运算 137
7.8.1带比较操作的子查询 137
7.8.2带IN的子查询 138
7.8.3集合运算 138
7.8.4并集运算符 139
7.8.5交集运算符 140
7.8.6差集运算符 140
第8章SQL的数据操纵语言(DML)与事务控制 141
8.1 INSERT语句 141
8.1.1插入一条记录 141
8.1.2插入多条记录 142
8.2 UPDATE语句 142
8.3 DELETE语句 143
8.4 MERGE语句 143
8.5事务控制 145
8.5.1事务的概念 145
8.5.2事务的提交和回退 146
8.5.3事务的开始和结束 146
8.5.4保存点 147
8.5.5事务的ACID特性 149
第9章 安全性与SQL的数据控制语言(DCL) 150
9.1用户管理 150
9.1.1创建用户 150
9.1.2修改用户密码 151
9.1.3设置用户密码失效 152
9.1.4锁定和解锁用户 152
9.1.5删除用户 153
9.2授予和收回权限 153
9.2.1系统权限 153
9.2.2授予系统权限 154
9.2.3收回系统权限 155
9.2.4使用系统权限 156
9.2.5对象权限 156
9.2.6授予对象权限 157
9.2.7收回对象权限 158
9.2.8使用对象权限 159
9.3角色 160
9.3.1系统预定义角色 160
9.3.2创建角色 162
9.3.2授予角色权限 162
9.3.3将角色授予用户 163
9.3.4从用户收回角色 163
9.3.5删除角色 163
9.4审计 164
9.4.1执行审计需要的特权 164
9.4.2审计示例 164
第10章PL/SQL 165
10.1 PL/SQL概述 165
10.1.1 SQL执行方式与PL/SQL执行方式的比较 165
10.1.2 PL/SQL结构 166
10.1.3 PL/SQL分类 167
10.2 PL/SQL声明 167
10.2.1声明常量 167
10.2.2声明变量 168
10.2.3声明类型 169
10.2.4 PL/SQL注释 173
10.3 PL/SQL执行 173
10.3.1赋值语句 174
10.3.2条件语句IF 174
10.3.3 CASE表达式 175
10.3.4 LOOP语句 176
10.3.5 WHILE语句 178
10.3.6 FOR语句 179
10.4 PL/SQL异常处理 179
10.4.1预定义的异常 180
10.4.2非预定义的异常 184
10.4.3用户自定义的异常 185
10.5存储过程 186
10.5.1建立存储过程 186
10.5.2调用存储过程 187
10.5.3删除存储过程 188
10.6函数 188
10.6.1建立函数 188
10.6.2调用函数 189
10.6.3删除函数 190
10.7游标 190
10.7.1隐式游标 190
10.7.2显式游标 191
10.8程序包 195
10.8.1系统预定义程序包 195
10.8.2用户自定义程序包 195
10.9触发器 199
10.9.1触发器类型及组成 199
10.9.2建立触发器 199
10.9.3重编译触发器 202
10.9.4删除触发器 203
10.9.5使能触发器 203
第11章 表空间和控制文件 204
11.1表空间的结构 204
11.2查看表空间 204
11.2.1通过SQL语句查看 204
11.2.2通过EM查看 205
11.3查看数据文件 205
11.3.1通过SQL语句查看 205
11.3.2通过EM查看 206
11.4本地管理表空间 206
11.4.1本地管理表空间的创建 206
11.4.2表空间的删除 207
11.5临时表空间的管理 208
11.5.1临时表空间的创建 208
11.5.2查看临时表空间 208
11.5.3临时表空间的删除 209
11.6 UNDO表空间的管理 209
11.6.1 UNDO表空间的创建 209
11.6.2 UNDO表空间的切换 209
11.6.3 UNDO表空间的删除 209
11.7控制文件概述 210
11.7.1控制文件的存储位置 210
11.7.2控制文件的镜像 210
11.8控制文件的维护 211
11.8.1控制文件的备份 211
11.8.2控制文件的恢复 213
第12章Oracle llg RMAN备份与恢复 214
12.1 Oracle llg RMAN简介 214
12.2 RMAN的基本结构与概念 214
12.2.1 RMAN的基本结构 214
12.2.2 RMAN的概念 215
12.3 RMAN配置 216
12.3.1设置目标数据库为归档日志模式 216
12.3.2设置恢复目录 217
12.4 RMAN备份 221
12.4.1备份整个数据库 221
12.4.2备份归档日志文件 222
12.4.3备份控制文件 223
12.4.4备份参数文件 224
12.4.5查看备份集合 224
12.5 RMAN恢复 226
12.5.1校验备份文件 226
12.5.2恢复数据文件 227
第13章 逻辑备份与恢复 230
13.1逻辑备份与恢复概述 230
13.2 imp/exp 230
13.2.1 imp语法格式 231
13.2.2 exp语法格式 232
13.2.3 exp导出实例 233
13.2.4 imp导入实例 236
13.3 impdp/expdp 238
13.3.1创建目录对象 238
13.3.2 impdp语法格式 239
13.3.3 expdp语法格式 240
13.3.4 expdp实例 240
13.3.5 impdp实例 243
第14章 闪回技术 246
14.1闪回技术概述 246
14.2闪回恢复区 246
14.2.1闪回恢复区功能 246
14.2.2闪回恢复区设置 247
14.3.闪回数据库 248
14.4闪回表 250
14.4.1闪回到时间戳 250
14.4.2闪回到SCN 251
14.5闪回删除 252
14.5.1使用ORIGINAL NAME闪回删除 252
14.5.2使用OBJECT NAME闪回删除 253
14.6闪回查询 254
14.7闪回版本查询 255
第15章Oracle llg Enterprise Manager 257
15.1 Oracle 1 1g EM简介 257
15.2 Oracle 1 1g EM配置 257
15.2.1启动Oracle 1 1g EM 257
15.2.2访问Oracle 11 g EM 258
15.3 Oracle 1 1 g EM管理数据库系统 261
15.3.1“服务器”选项卡 262
15.3.2“方案”选项卡 267
15.3.3“数据移动”选项卡 268
15.3.4“性能”选项卡 272
附录 实验 274
实验报告 307
参考文献 310