前言
第一部分 Oracle使用基礎
第1章 SQL語言基礎 1
1.1 查詢語句 2
1.1.1 查詢語句的基本用法 2
1.1.2 查詢語句中的條件 6
1.1.3 查詢語句中的單行函數 8
1.1.4 分組函數與分組統計 14
1.1.5 數據的排序 17
1.1.6 多錶查詢 18
1.1.7 子查詢 20
1.2 DML語句 22
1.2.1 INSERT語句 22
1.2.2 DELETE語句 23
1.2.3 UPDATE語句 24
1.3 事務控製語句 24
1.4 DDL語句 27
1.4.1 錶的創建 27
1.4.2 如何修改錶的結構 29
1.4.3 其他DDL命令 31
1.5 約束 32
1.5.1 約束的類型 32
1.5.2 如何在創建錶時指定約束 33
1.5.3 如何在創建錶之後指定約束 35
1.5.4 約束的維護 36
1.6 視圖 37
1.6.1 視圖的創建、修改和刪除 38
1.6.2 如何對視圖進行訪問 40
1.6.3 復雜視圖 41
1.7 索引 42
1.7.1 索引的基本概念 42
1.7.2 索引的創建、修改和刪除 45
1.7.3 索引信息的查詢 46
1.8 序列 46
1.8.1 序列的創建、修改和刪除 46
1.8.2 序列的使用 48
1.8.3 序列信息的查詢 50
1.9 同義詞 50
1.9.1 同義詞的概念和類型 50
1.9.2 同義詞的創建與刪除 51
1.9.3 同義詞信息的查詢 52
第2章 SQL*Plus用法指南 53
2.1 SQL*Plus的基本用法 53
2.1.1 登錄與退齣 53
2.1.2 如何獲取幫助信息 55
2.1.3 如何修改SQL*Plus的設置信息 55
2.1.4 實例的啓動與關閉 57
2.2 SQL*Plus中的緩衝區 58
2.2.1 執行緩衝區中的內容 58
2.2.2 編輯緩衝區的內容 59
2.2.3 如何對操作係統文件進行讀寫 61
2.3 如何在SQL*Plus中使用變量 64
2.3.1 用戶自定義的變量 64
2.3.2 參數變量 65
2.3.3 與變量有關的交互式命令 66
2.4 SQL*Plus的報錶功能 67
2.4.1 報錶的標題設計 68
2.4.2 報錶顯示格式的設計 69
2.4.3 如何對特定列進行統計 72
第3章 PL/SQL編程 75
3.1 PL/SQL概述 75
3.2 PL/SQL中的變量 76
3.2.1 變量的定義與使用 76
3.2.2 如何在PL/SQL中定義類型 78
3.3 PL/SQL中的流控製 81
3.3.1 IF語句 82
3.3.2 LOOP語句 83
3.3.3 WHILE語句 83
3.3.4 FOR語句 84
3.4 PL/SQL如何訪問數據庫 85
3.4.1 如何對數據進行查詢 85
3.4.2 如何使用DML語句 87
3.5 子程序設計 88
3.5.1 如何使用過程 88
3.5.2 如何使用函數 91
3.5.3 函數與過程的重載 93
3.5.4 函數與過程的遞歸調用 95
3.6 存儲過程與存儲程序 97
3.6.1 存儲過程 98
3.6.2 存儲函數 100
3.6.3 程序包 101
3.6.4 係統預定義程序包 104
3.6.5 與存儲程序有關的數據字典 110
3.7 異常處理 113
3.7.1 異常處理程序 113
3.7.2 預定義的異常 114
3.7.3 非預定義異常 117
3.7.4 用戶自定義的異常 118
3.7.5 異常的傳遞 121
3.8 遊標的應用 124
3.8.1 隱式遊標 124
3.8.2 顯式遊標 125
3.8.3 帶參數的遊標 130
3.8.4 如何通過遊標修改錶中的數據 132
3.9 觸發器 133
3.9.1 觸發器的使用 134
3.9.2 語句級觸發器 135
3.9.3 行觸發器 137
3.9.4 視圖上的觸發器 141
3.9.5 與觸發器有關的數據字典 144
第二部分 Oracle DBA
第4章 Oracle體係結構 147
4.1 實例的體係結構 148
4.1.1 實例的概念 148
4.1.2 實例的組成 148
4.2 實例的內存結構 149
4.2.1 數據庫高速緩存 150
4.2.2 重做日誌緩衝區 153
4.2.3 共享池 153
4.2.4 Java池 155
4.2.5 PGA 155
4.3 實例中的後颱進程 156
4.3.1 DBWR進程 157
4.3.2 LGWR進程 158
4.3.3 CKPT進程 160
4.3.4 SMON進程 161
4.3.5 PMON進程 162
4.3.6 ARCH進程 162
4.4 實例的內存結構管理 163
4.4.1 自動內存管理 163
4.4.2 自動共享內存管理 164
4.4.3 手工共享內存管理 164
4.5 數據庫的連接模式 165
4.5.1 專用數據庫連接模式 165
4.5.2 共享數據庫連接模式 166
4.5.3 如何設置共享連接模式 167
4.6 數據庫的邏輯結構 168
4.6.1 錶空間 169
4.6.2 段 171
4.6.3 區 172
4.6.4 數據塊 172
4.7 數據庫的物理結構 172
4.7.1 數據文件 173
4.7.2 控製文件 173
4.7.3 重做日誌文件 174
4.7.4 跟蹤文件和警告文件 174
4.8 特權用戶與口令文件 175
4.9 數據字典視圖與動態性能視圖 176
4.9.1 數據字典視圖 176
4.9.2 動態性能視圖 177
4.10 初始化參數 178
4.10.1 參數文件 178
4.10.2 初始化參數的查看 179
4.10.3 初始化參數的修改 179
第5章 數據庫的創建 181
5.1 數據庫的規劃 181
5.1.1 SGA的規劃 181
5.1.2 數據文件的規劃 182
5.1.3 控製文件的規劃 183
5.1.4 重做日誌文件的規劃 183
5.1.5 參數文件的規劃 183
5.2 如何利用DBCA創建數據庫 184
5.3 如何利用命令行創建數據庫 195
5.3.1 編輯文本參數文件 195
5.3.2 實例的管理 196
5.3.3 口令文件的創建 198
5.3.4 數據庫的創建 200
5.3.5 如何創建數據字典視圖 202
5.3.6 如何創建默認的profile 202
5.3.7 如何創建SCOTT模式 202
5.3.8 如何創建服務器參數文件 203
5.4 數據庫服務器的啓動和關閉 203
5.5 如何利用NET Manager配置客戶端與服務器端的通信 205
5.5.1 監聽器的創建 205
5.5.2 監聽器的管理 206
5.5.3 Oracle客戶端的配置 207
第6章 錶空間的管理 209
6.1 錶空間的結構 209
6.1.1 區管理方式 209
6.1.2 段管理方式 210
6.1.3 數據文件 210
6.2 本地管理錶空間的管理 211
6.2.1 本地管理錶空間的創建 211
6.2.2 錶空間信息的查詢 212
6.2.3 錶空間的刪除 213
6.3 大文件錶空間的管理 213
6.3.1 大文件錶空間的支持 213
6.3.2 大文件錶空間的創建 214
6.3.3 大文件錶空間的修改 214
6.4 臨時錶空間的管理 214
6.4.1 臨時錶空間的創建 215
6.4.2 臨時錶空間組 215
6.5 UNDO錶空間的管理 216
6.5.1 UNDO錶空間的創建 217
6.5.2 UNDO錶空間的切換 217
6.6 錶空間的擴展 218
6.6.1 如何添加新的數據文件 219
6.6.2 如何擴展數據文件 219
6.7 錶空間的維護 220
6.7.1 錶空間的聯機與脫機 220
6.7.2 數據文件的聯機與脫機 222
6.7.3 錶空間的讀寫權限 222
6.7.4 數據文件的移動和重命名 223
第7章 存儲空間管理 225
7.1 段的管理 225
7.1.1 段的類型 225
7.1.2 段的空間管理 228
7.2 區的管理 229
7.2.1 區的分配 229
7.2.2 區的迴收 230
7.3 數據塊的管理 230
7.3.1 數據塊的組成 230
7.3.2 數據塊的空間管理 231
第8章 控製文件管理 234
8.1 控製文件的規劃 234
8.1.1 控製文件的鏡像 234
8.1.2 控製文件的存儲位置 235
8.2 控製文件的重新創建 236
8.2.1 如何增加新的控製文件 236
8.2.2 如何重新創建控製文件 236
8.3 控製文件的備份與刪除 240
8.4 控製文件信息的查詢 240
8.4.1 查詢控製文件的位置和名稱 241
8.4.2 查詢控製文件中記錄的信息 241
第9章 重做日誌管理 243
9.1 重做日誌的規劃 244
9.1.1 重做日誌緩衝區的規劃 245
9.1.2 重做日誌文件組的規劃 245
9.1.3 如何對重做日誌文件進行規劃 246
9.2 重做日誌文件的管理 247
9.2.1 增加重做日誌組 247
9.2.2 增加日誌成員 248
9.2.3 修改重做日誌文件的存儲位置和名稱 248
9.2.4 刪除重做日誌文件 249
9.2.5 重做日誌文件的清空 250
9.2.6 重做日誌的切換 250
9.2.7 重做日誌信息的查詢 251
9.3 歸檔日誌的管理 252
9.3.1 數據庫的日誌模式 252
9.3.2 切換日誌模式 253
9.3.3 設置歸檔位置 254
9.3.4 歸檔信息的查詢 255
9.4 如何對重做日誌進行分析 256
9.4.1 如何創建字典文件 256
9.4.2 如何創建分析列錶 257
9.4.3 如何開始日誌分析 257
9.4.4 如何查看日誌分析結果 258
9.4.5 如何結束日誌分析 259
第10章 基本數據庫對象管理 260
10.1 錶的管理 260
10.1.1 錶的結構 260
10.1.2 錶的創建 262
10.1.3 錶的修改 264
10.1.4 錶的刪除 266
10.2 分區錶的管理 267
10.2.1 分區的概念 268
10.2.2 範圍分區 268
10.2.3 列錶分區 269
10.2.4 散列分區 270
10.2.5 復閤分區 270
10.3 索引的管理 271
10.3.1 索引概述 272
10.3.2 反嚮索引 272
10.3.3 位圖索引 273
10.3.4 基於函數的索引 274
10.3.5 分區索引 275
10.3.6 索引的維護 275
10.4 簇的管理 276
10.4.1 簇的創建 277
10.4.2 簇的修改 278
10.4.3 簇的刪除 278
10.4.4 簇信息的查詢 279
10.5 索引組織錶的管理 279
10.5.1 索引組織錶的概念 279
10.5.2 索引組織錶的創建 280
10.5.3 索引組織錶的維護 281
第11章 用戶與權限管理 282
11.1 用戶管理 282
11.1.1 數據庫中有哪些用戶 282
11.1.2 如何創建用戶 283
11.1.3 如何修改用戶的信息 284
11.1.4 如何刪除用戶 285
11.2 用戶權限的管理 285
11.2.1 係統權限的管理 286
11.2.2 對象權限的管理 288
11.2.3 權限信息的查詢 291
11.3 角色的管理 292
11.3.1 角色的創建和刪除 293
11.3.2 角色中權限的添加和刪除 294
11.3.3 角色的分配和迴收 295
11.3.4 角色信息的查詢 295
11.4 PROFILE的管理 296
11.4.1 PROFILE的創建與刪除 296
11.4.2 如何利用PROFILE對用戶口令進行控製 297
11.4.3 如何利用PROFILE對用戶使用資源進行控製 298
11.4.4 默認的PROFILE 299
第三部分 自動文件管理和自動存儲管理
第12章 自動文件管理 301
12.1 如何激活自動文件管理功能 301
12.2 文件的命名規則 302
12.3 如何創建OMF數據庫 302
12.4 如何創建OMF錶空間 304
12.5 如何創建OMF控製文件 305
12.6 如何創建OMF重做日誌文件 306
第13章 自動存儲管理 307
13.1 ASM實例 307
13.2 磁盤組的管理 309
13.3 如何使用ASM磁盤組 312
第四部分 備份與恢復
第14章 數據庫的導入與導齣 315
14.1 導入導齣工具的用法 316
14.2 錶的導入與導齣 317
14.3 用戶模式的導入與導齣 319
14.4 數據庫的導入與導齣 319
14.5 錶空間的導入與導齣 319
第15章 數據庫的常規備份與恢復 322
15.1 備份與恢復的相關概念 322
15.1.1 冷備份與熱備份 322
15.1.2 物理備份與邏輯備份 322
15.1.3 完全備份與增量備份 322
15.1.4 備份策略 323
15.1.5 完全恢復與不完全恢復 324
15.1.6 日誌模式對備份與恢復的影響 324
15.1.7 哪些情況將導緻數據丟失 324
15.1.8 哪些文件需要備份 325
15.2 控製文件的備份與恢復 326
15.3 重做日誌文件的備份與恢復 326
15.4 數據文件的備份 326
15.5 數據庫的完全恢復 327
15.6 兩個實際的備份與恢復的例子 328
15.6.1 模擬數據文件損壞的例子 328
15.6.2 模擬磁盤損壞的例子 329
15.7 Flashback技術在數據庫恢復中的應用 329
15.7.1 迴收站的應用 330
15.7.2 Flashback技術在錶上的應用 331
15.7.3 Flashback技術在數據庫恢復中的應用 331
第16章 如何利用RMAN對數據庫進行備份與恢復 332
16.1 RMAN的基本結構 332
16.2 RMAN的配置 334
16.2.1 如何配置RMAN客戶端的連接 334
16.2.2 恢復目錄的創建 334
16.3 如何利用RMAN對數據庫進行備份 335
16.3.1 通道的設置 335
16.3.2 存儲腳本的用法 336
16.3.3 控製文件的備份 337
16.3.4 參數文件的備份 338
16.3.5 歸檔日誌文件的備份 338
16.3.6 非歸檔模式下數據文件的備份 339
16.3.7 歸檔模式下數據文件的備份 339
16.3.8 備份集的備份 341
16.4 如何對數據庫進行完全恢復 342
16.4.1 如何對備份文件進行校驗 342
16.4.2 如何對數據文件進行恢復 342
16.5 兩個實際的例子 344
16.5.1 模擬數據文件損壞的例子 344
16.5.2 模擬磁盤損壞的例子 345
16.6 如何對壞塊進行恢復 346
16.6.1 什麼叫塊介質恢復 346
16.6.2 如何進行塊介質恢復 347
16.7 如何對數據進行跨平颱移植 347
16.7.1 字節存儲次序相同時的移植 348
16.7.2 字節存儲次序不同時的移植 349
附錄A Oracle 11g在AIX下的安裝 351
附錄B Oracle 11g在Linux下的安裝 360
附錄C Oracle 11g在Solaris下的安裝 364
· · · · · · (
收起)