本書全面講述了Oracle數據庫的日常管理工作內容。全書共14章,包含Oracle簡介和安裝、Oracle客戶端、管理Oracle環境、Oracle體系結構、管理Oracle存儲結構、SQL語言、表、約束、視圖、同義詞和序列、索引、實現數據庫安全、Data Pump數據導出和導入、數據庫備份和恢復。每章結尾提供適量的選擇題、簡答題和操作題,通過練習和操作實踐,幫助讀者鞏固所學內容。
本書適合Oracle愛好者、Oracle工程師、數據庫管理員、培訓機構以及大專院校計算機專業教師和學生使用。
《Oracle數據庫基礎與應用教程》全面、系統地講解Oracle 11g的相關知識點;使用大量圖表和實例進行描述,便于理解;編寫思路清晰,易于自學和練習。
於岳,企業高級工程師,主要研究領導包括UNIX/Linux、Oracle、SQL Server、Windows等。
第1章 Oracle簡介和安裝 1
1.1 Oracle數據庫簡介 1
1.1.1 什么是Oracle數據庫 1
1.1.2 Oracle數據庫發展歷程 1
1.1.3 數據庫管理員工作任務 2
1.1.4 管理Oracle數據庫的工具 2
1.1.5 Oracle方案對象 3
1.2 安裝和卸載Oracle數據庫軟件 4 1.2.1 安裝Oracle數據庫軟件 4
1.2.2 卸載Oracle數據庫軟件 15
1.3 創建和刪除數據庫 17
1.3.1 創建數據庫 18
1.3.2 刪除數據庫 26
1.4 小結 28
1.5 習題 29
第2章 Oracle客戶端 30
2.1 SQL*Plus 30
2.1.1 SQL*Plus簡介 30
2.1.2 SQL*Plus登錄和注銷 30
2.1.3 SQL*Plus緩沖區操作 33
2.1.4 顯示系統變量 37
2.1.5 設置系統變量 39
2.1.6 SQL*Plus命令 45
2.1.7 運行腳本文件 49
2.2 Oracle Enterprise Manager 50
2.2.1 Oracle Enterprise Manager簡介 50 2.2.2 Oracle Enterprise Manager登錄和
注銷 50
2.2.3 Oracle Enterprise Manager頁面 51
2.2.4 創建管理員 54
2.2.5 更改SYS口令 55
2.3 Oracle SQL Developer 56
2.3.1 Oracle SQL Developer簡介 56
2.3.2 Oracle SQL Developer連接數據庫 56
2.4 小結 57
2.5 習題 58
第3章 管理Oracle環境 59
3.1 配置Oracle網絡環境 59
3.1.1 添加監聽程序 59
3.1.2 添加本地網絡服務名 62
3.1.3 管理監聽程序 65
3.2 啟動數據庫 68
3.2.1 啟動數據庫步驟 68
3.2.2 啟動數據庫選項 68
3.2.3 轉換數據庫啟動模式 71
3.3 關閉數據庫 72
3.3.1 關閉數據庫步驟 72
3.3.2 關閉數據庫選項 73
3.4 使用OEM啟動和關閉數據庫 74
3.4.1 使用OEM關閉數據庫 74
3.4.2 使用OEM啟動數據庫 76
3.5 使用【服務】工具管理Oracle服務 77
3.6 初始化參數 79
3.6.1 初始化參數簡介 79
3.6.2 查看初始化參數 82
3.7 參數文件 84
3.7.1 服務器參數文件 84
3.7.2 文本初始化參數文件 84
3.8 修改初始化參數 85
3.8.1 修改系統級初始化參數 85
3.8.2 修改會話級初始化參數 86
3.9 創建參數文件 86
3.9.1 創建文本初始化參數文件 86
3.9.2 創建服務器參數文件 87
3.10 小結 88
3.11 習題 88
第4章 Oracle體系結構 90
4.1 內存結構 90
4.1.1 系統全局區 90
4.1.2 程序全局區 94
4.2 進程結構 95
4.2.1 用戶進程 95
4.2.2 服務器進程 96
4.2.3 后臺進程 96
4.3 物理存儲結構 98
4.3.1 控制文件 98
4.3.2 數據文件 99
4.3.3 聯機重做日志文件 99
4.3.4 歸檔日志文件 100
4.3.5 參數文件 100
4.3.6 密碼文件 101
4.3.7 警告日志文件 102 4.3.8 跟蹤文件 102
4.4 邏輯存儲結構 102
4.4.1 數據塊 103
4.4.2 區 105
4.4.3 段 105
4.4.4 表空間 106
4.5 數據字典 107
4.5.1 數據字典簡介 107
4.5.2 數據字典內容 108
4.5.3 數據字典分類 108
4.6 動態性能視圖 110
4.6.1 動態性能視圖簡介 110
4.6.2 動態性能視圖分類 110
4.7 小結 112
4.8 習題 113
第5章 管理Oracle存儲結構 114
5.1 管理控制文件 114
5.1.1 控制文件簡介 114
5.1.2 備份控制文件 115
5.1.3 創建新控制文件 116
5.1.4 刪除控制文件 117
5.1.5 添加控制文件 119
5.2 表空間簡介 120
5.2.1 邏輯空間管理 120
5.2.2 段空間管理 121
5.2.3 大文件表空間和小文件表空間 121
5.3 創建表空間 122
5.3.1 創建永久表空間 122
5.3.2 創建臨時表空間 125
5.3.3 創建UNDO表空間 126
5.4 修改表空間 127
5.4.1 更改表空間大小 127
5.4.2 表空間聯機或脫機 127
5.4.3 更改表空間讀寫模式 129
5.4.4 修改表空間名稱 129
5.5 刪除表空間 130 5.6 管理數據文件 131
5.6.1 數據文件簡介 131
5.6.2 添加數據文件 131
5.6.3 啟用或禁用數據文件自動擴展 132
5.6.4 更改數據文件大小 133
5.6.5 數據文件聯機或脫機 133
5.6.6 更改數據文件的位置和名稱 134
5.6.7 刪除數據文件 135
5.7 管理聯機重做日志文件 136
5.7.1 聯機重做日志文件簡介 136
5.7.2 創建重做日志文件組 136
5.7.3 創建重做日志文件 137
5.7.4 刪除重做日志文件 137
5.7.5 重命名重做日志文件 137
5.7.6 刪除重做日志文件組 138
5.7.7 清除重做日志文件 139
5.7.8 強制執行日志切換 139
5.7.9 更改數據庫歸檔模式 140
5.8 使用OEM管理存儲結構 143
5.8.1 使用OEM創建表空間 143
5.8.2 使用OEM對表空間進行脫機
和聯機 146
5.8.3 使用OEM刪除表空間 146
5.8.4 使用OEM創建數據文件 147
5.8.5 使用OEM對數據文件進行脫機
和聯機 148 5.8.6 使用OEM刪除數據文件 149
5.8.7 使用OEM創建重做日志組 149
5.8.8 使用OEM刪除重做日志組 150
5.9 小結 151
5.10 習題 152
第6章 SQL語言 153
6.1 SQL語言簡介 153
6.2 SQL基本語法 153
6.2.1 SELECT子句 154
6.2.2 FROM子句 156
6.2.3 WHERE子句 156
6.2.4 ORDER BY子句 159
6.2.5 GROUP BY子句 160
6.2.6 HAVING子句 160
6.3 SQL高級查詢 161
6.3.1 組函數 161
6.3.2 子查詢 162
6.3.3 合并查詢 164 6.4 數據操作 166
6.4.1 插入數據 166
6.4.2 更新數據 167
6.4.3 刪除數據 167
6.5 單行函數 168
6.5.1 字符函數 168
6.5.2 數字函數 172
6.5.3 日期時間函數 176
6.5.4 轉換函數 182
6.5.5 其他函數 187
6.6 小結 188
6.7 習題 189
第7章 表 190
7.1 表簡介 190
7.1.1 什么是表 190
7.1.2 表類型 190
7.2 Oracle內置數據類型 191
7.2.1 字符數據類型 191
7.2.2 數字數據類型 192
7.2.3 日期和時間數據類型 192
7.2.4 二進制數據類型 193
7.2.5 行數據類型 193
7.2.6 大對象數據類型 193
7.3 創建表 193
7.4 修改表 195
7.4.1 設置表的讀寫模式 195
7.4.2 為表指定并行處理 195
7.4.3 啟用或禁用與表相關聯觸發器 196
7.4.4 啟用或禁用表鎖定 196
7.4.5 解除分配未使用的空間 197 7.4.6 標記列為未使用 197
7.4.7 在表中添加、修改和刪除列 198
7.4.8 為表添加注釋 200
7.4.9 移動表到其他表空間 201
7.4.10 更改表的日志記錄屬性 201
7.4.11 壓縮表 201
7.4.12 收縮表 202
7.4.13 重命名列 203
7.4.14 重命名表 203
7.5 截斷表 204
7.6 刪除表 204
7.7 使用OEM管理表 205
7.7.1 使用OEM創建表 205
7.7.2 使用OEM收縮段 207
7.7.3 使用OEM刪除表 209
7.8 小結 210
7.9 習題 210
第8章 約束 211
8.1 約束簡介 211
8.1.1 什么是約束 211
8.1.2 約束優點 211
8.1.3 約束類型 211
8.2 創建約束 213
8.2.1 創建NOT NULL約束 213
8.2.2 創建UNIQUE、PRIMARY KEY、
CKECK和FOREIGN KEY約束 213
8.3 修改約束 215
8.3.1 修改約束狀態 215
8.3.2 修改約束名稱 216 8.4 刪除約束 216
8.5 使用OEM管理約束 217
8.5.1 使用OEM創建PRIMARY KEY
約束 217
8.5.2 使用OEM創建UNIQUE約束 219
8.5.3 使用OEM創建CHECK約束 220
8.5.4 使用OEM創建FOREIGN KEY
約束 221
8.5.5 使用OEM刪除約束 222
8.6 小結 222
8.7 習題 223
第9章 視圖 224
9.1 視圖簡介 224
9.1.1 什么是視圖 224
9.1.2 視圖作用 224
9.1.3 視圖類型 225
9.2 創建視圖 225
9.3 在視圖中的數據操作 227
9.4 修改視圖 228 9.5 刪除視圖 229
9.6 使用OEM管理視圖 229
9.6.1 使用OEM創建視圖 229
9.6.2 使用OEM刪除視圖 230
9.7 小結 231
9.8 習題 231
第10章 同義詞和序列 232
10.1 同義詞 232
10.1.1 同義詞簡介 232
10.1.2 同義詞分類 232
10.1.3 創建同義詞 232
10.1.4 使用同義詞 233
10.1.5 刪除同義詞 234
10.2 序列 234
10.2.1 序列簡介 234
10.2.2 創建序列 235
10.2.3 使用序列 236 10.2.4 修改序列 237
10.2.5 刪除序列 238
10.3 使用OEM管理同義詞和序列 238
10.3.1 使用OEM創建同義詞 238
10.3.2 使用OEM刪除同義詞 239
10.3.3 使用OEM創建序列 240
10.3.4 使用OEM刪除序列 241
10.4 小結 241
10.5 習題 242
第11章 索引 243
11.1 索引簡介 243
11.1.1 什么是索引 243
11.1.2 索引優缺點 243
11.1.3 創建索引的列的特點 244
11.1.4 索引使用原則 244
11.1.5 索引分類 244
11.2 創建索引 246 11.3 修改索引 249
11.3.1 重建現有索引 249
11.3.2 收縮索引 250
11.3.3 合并索引塊 251
11.3.4 使得索引不可見 251
11.3.5 為索引分配新區 252
11.3.6 釋放未使用的空間 252
11.3.7 設置索引并行特性 252
11.3.8 啟用或禁用基于函數的索引 253
11.3.9 指定日志記錄屬性 253
11.3.10 監視索引的使用 254
11.3.11 標記索引無法使用 254
11.3.12 重命名索引 255
11.4 刪除索引 255 11.5 使用OEM管理索引 256
11.5.1 使用OEM創建索引 256
11.5.2 使用OEM收縮段 257
11.5.3 使用OEM刪除索引 258
11.6 小結 259
11.7 習題 259
第12章 實現數據庫安全 261
12.1 用戶 261
12.1.1 Oracle身份驗證方式 261
12.1.2 用戶簡介 261
12.1.3 創建用戶 262
12.1.4 修改用戶 264
12.1.5 刪除用戶 267
12.2 角色 267
12.2.1 角色簡介 267
12.2.2 預定義角色 268
12.2.3 創建角色 269
12.2.4 啟用當前會話的角色 269
12.2.5 修改角色 271
12.2.6 刪除角色 271
12.3 授予和撤銷權限 272
12.3.1 權限簡介 272
12.3.2 授予權限 276
12.3.3 撤銷權限 278
12.3.4 查看用戶當前可用的權限 280
12.4 概要文件 280 12.4.1 概要文件簡介 280
12.4.2 創建概要文件 281
12.4.3 分配概要文件 283
12.4.4 修改概要文件 284
12.4.5 刪除概要文件 285
12.5 使用OEM管理數據庫安全 286
12.5.1 使用OEM創建用戶 286
12.5.2 使用OEM鎖定用戶 290
12.5.3 使用OEM解除用戶的鎖定 290
12.5.4 使用OEM對用戶進行口令失效 291
12.5.5 使用OEM刪除用戶 292
12.5.6 使用OEM創建角色 292
12.5.7 使用OEM刪除角色 296
12.5.8 使用OEM授予對象權限 296
12.5.9 使用OEM撤銷對象權限 297
12.5.10 使用OEM創建概要文件 298
12.5.11 使用OEM刪除概要文件 299
12.6 小結 300
12.7 習題 301
第13章 Data Pump數據導出和導入 303
13.1 Data Pump簡介 303
13.1.1 什么是Data Pump 303
13.1.2 Data Pump組成部分 303
13.1.3 Data Pump特點 304
13.2 對象 304
13.2.1 對象簡介 304
13.2.2 創建對象 305
13.3 Data Pump Export 306
13.3.1 Data Pump Export簡介 306
13.3.2 expdp命令參數詳解 306
13.4 Data Pump Import 312 13.4.1 Data Pump Import簡介 312
13.4.2 impdp命令參數詳解 313
13.5 使用OEM導出和導入數據 320
13.5.1 使用OEM導出數據 320
13.5.2 使用OEM導入數據 324
13.6 傳輸表空間 326
13.6.1 傳輸表空間簡介 326
13.6.2 傳輸表空間實例 327
13.7 小結 332
13.8 習題 332
第14章 數據庫備份和恢復 334
14.1 RMAN備份簡介 334
14.1.1 什么是RMAN 334
14.1.2 RMAN備份形式 335
14.1.3 備份片 336
14.1.4 通道 336
14.1.5 RMAN環境簡介 337
14.1.6 啟動和退出RMAN 338
14.2 RMAN資料檔案庫 339
14.2.1 使用控制文件 339
14.2.2 使用恢復 340
14.3 顯示、設置和清除RMAN 配置
參數 342
14.3.1 顯示RMAN 配置參數 342
14.3.2 設置RMAN 配置參數 343
14.3.3 清除RMAN 配置參數 347
14.4 備份數據庫 347
14.4.1 整個數據庫備份 348
14.4.2 表空間備份 348
14.4.3 數據文件備份 348
14.4.4 控制文件備份 349
14.4.5 歸檔日志文件備份 349
14.4.6 服務器參數文件備份 350
14.5 RMAN高級備份 350
14.5.1 壓縮備份 350
14.5.2 限制備份集的文件數量 350
14.5.3 指定備份集大小 350 14.5.4 指定備份標記 350
14.5.5 指定備份文件格式 351
14.5.6 跳過脫機、只讀和無法訪問的
文件 352
14.5.7 創建多個備份集副本 352
14.5.8 指定多個備份通道 352
14.6 數據庫增量備份 353
14.6.1 RMAN備份類型 353
14.6.2 啟用塊更改跟蹤 354
14.7 管理RMAN備份 355
14.7.1 REPORT命令 355
14.7.2 LIST命令 356
14.7.3 DELETE命令 359
14.8 數據庫恢復 360
14.8.1 數據庫恢復類型 360
14.8.2 介質恢復類型 361
14.8.3 RMAN恢復簡介 362
14.8.4 恢復數據庫 363
14.9 使用OEM管理備份和恢復 365
14.9.1 使用OEM進行備份設置 365
14.9.2 使用OEM進行恢復設置 367
14.9.3 使用OEM進行調度備份 367
14.9.4 使用OEM管理當前備份 370
14.9.5 使用OEM執行恢復 371
14.10 小結 371
14.11 習題 373