本書共15章,全面介紹了Oracle云數據庫管理系統(tǒng)的基本原理、管理方法和開發(fā)方法,包括數據庫基礎知識、云計算和云數據概述、Oracle實例、數據庫存儲結構、Oracle網絡結構與管理、SQL工具與SQL基礎、數據庫管理、數據庫結構管理、數據庫對象管理、數據庫安全與事務管理、數據庫備份與恢復、閃回技術、PL/SQL程序設計基礎、JDBC程序設計基礎和多租戶數據庫管理等內容。
版本升級為Oracle 12c,這是ORACLE公司推出的新的基于云計算的云數據庫系統(tǒng)。目前國內還沒有ORACLE12C版本相關的教材,
前
言
隨著云計算技術逐步進入實際應用中,基于云計算的數據庫產品應運而生。作為業(yè)界領先企業(yè)的ORACLE公司也率先推出了支持云計算的Oracle 12c云數據庫管理系統(tǒng)。因此,在云計算應用隨處可見的情況下,掌握Oracle云數據庫技術是計算機從業(yè)人員的基本要求。
目前,市場上關于Oracle 12c的書藉并不多,針對高等學校而編寫的教材就更少。Oracle12c云數據庫管理系統(tǒng)非常龐大,它早已不是簡單的數據庫管理系統(tǒng),而是提供多種云數據庫解決方案。云計算及云數據庫應用又是幾乎涉及到每個行業(yè),它的使用者或管理者有許多是非計算機專業(yè)或初次了解Oracle數據庫。如何盡快掌握Oracle云數據庫的精華是每個專業(yè)人員的希望。因此,如何在一本書中將Oracle云數據庫的核心內容全面介紹出來,既讓初學者很快掌握Oracle 12c,同時又讓一般讀者能從中得到提高,這就是編寫本書的主要目的。
本書是根據自己講授Oracle課程和科研應用Oracle數據庫管理系統(tǒng)的經驗,并在參考Oracle 12c原版手冊和國內外同類書藉與論文的基礎上,從應用者的角度由淺入深地介紹云數據庫的基礎知識、Oracle12c云數據庫結構、Oracle12云數據庫管理和JDBC數據庫編程的方法,使讀者能通過本書的學習了解數據庫的基礎理論,掌握Oracle12c云數據庫系統(tǒng)的管理和開發(fā)方法。
本書共分十五章,全面介紹了Oracle 12c云數據庫管理系統(tǒng)的基本原理、管理方法和開發(fā)方法,包括數據庫基礎知識、云計算及云數據庫基礎知識、Oracle12c實例、Oracle12c數據庫結構及管理、Oracle12c數據庫對象管理、Oracle12c數據庫安全管理、Oracle12c數據庫事務與并發(fā)管理、Oracle12c數據庫備份和恢復、SQL語言和PL/SQL編程、Oracle12c網絡結構與管理、JDBC程序設計基礎和Oracle12c多租戶數據庫管理等內容。
本書的主要特點:
? 全書以Oracle12c云數據庫管理系統(tǒng)為主要內容,全而介紹了關系數據庫的基礎知道、云數據庫的基本結構和基本原理,即包括Oracle12c的使用和管理方法,也包括數據庫應用的基本開發(fā)方法。
? 全書的章節(jié)安排條理清晰,寫作風格上深入淺出,語言通俗易懂,理論適中并與實踐緊密結合。通過本書學習既能掌握Oracle12c云數據庫的原理和結構,同時能熟悉Oracle12c數據庫的管理與開發(fā)方法。
? 本書從應用者角度,由淺入深來安排章節(jié)內容,很好的把握云數據庫原理與數據庫應用結合起來,實例豐富,操作性強,每章有大量獨立思考題和操作題。
? 本書作者長期從事Oracle數據庫方面的科研和教學工作,書稿的主要內容都經歷過從Oracle9i到Oracle12c的多次講授或應用。
本書雖然是針對Oracle12c編寫的,但由于Oracle的上下兼容性很好,所以本書特別適用于計算機專業(yè)、信息管理專業(yè)等大學教材和各類Oracle的認證培訓教材,也適用于Oracle數據庫管理員參考手冊,也是計算機從業(yè)人員自學Oracle數據庫系統(tǒng)的合適教材。
作為大學教材,建議有60個學時理論講授,同時要有不少于20學時的上機實習。在實驗環(huán)境中建議每臺計算機都能安裝Oracle12c的企業(yè)版,以使學生能自由地、全面地了解Oracle12c的全部內容,并能很好地實習分布式數據庫的基本知識。
本書由姚世軍、沈建京、陳楚湘、尹祖?zhèn)、吳善明和郭曉峰編著。姚世軍編寫第八章、第九章和第十章,沈建京編寫第二章、第三章和第七章,陳楚湘編寫第四章、第五章和第六章,尹祖(zhèn)ゾ帉懙谑潞偷谑恼,吳善明編寫第十一章和第十二章,郭曉峰編寫第一章和第十五章。全書由姚世軍統(tǒng)稿。
在本書的編寫和出版過程中,中國鐵道出版社的劉丹主任、孟欣編輯對全書提出了許多寶貴意見,為本書的出版提供了很大的幫助,作者在此對她們以及參與本書出版的各位同志表示衷心的感謝。
本書在編寫過程中參考了一些學者關于云計算、云數據庫、Oracle管理技術等相關理論的論文及書籍,這里不一一列出,一并表示感謝。
由于編者水平有限,本書難免存在疏漏或不足之處,敬請廣大讀者批評指正,編者將非常感謝!
編者
2015年09月
姚世軍:解放軍信息工程學院資深教授、軍隊優(yōu)秀專業(yè)人才崗位津貼獲得者、軍隊院校育才獎獲得者、河南省計算機教育研究會理事、全國高等計算機等級考試專家組成員(河南考區(qū))。
第1章
數據庫基本概念 10
1.1 數據庫概述 10
1.1.1 數據庫和數據庫系統(tǒng) 10
1.1.2 數據庫系統(tǒng)的組成 11
1.1.3 數據庫系統(tǒng)的特征 11
1.1.4
數據庫系統(tǒng)結構 12
1.2 數據庫管理系統(tǒng) 12
1.2.1 數據庫管理系統(tǒng)的功能 13
1.2.2 數據庫管理系統(tǒng)的組成 14
1.3 數據模型與關系模型 15
1.3.1 數據模型 15
1.3.2 關系模型 15
1.4 實體-關系圖 16
1.5 數據庫系統(tǒng)設計 18
小 結 19
習 題 19
第2章 Oracle 12c云數據庫概述 21
2.1 云計算技術簡介 21
2.1.1
云計算概念及特征 21
2.1.2 云計算分類 22
2.1.3
云計算服務模式 22
2.1.4
云計算中的主要角色 25
2.2
Oracle 12c云計算模型 25
2.2.1
Oracle云解決方案 25
2.2.2
Oracle私有云 26
2.3 云數據庫概述 26
2.3.1 云數據庫概念 27
2.3.2 云數據庫的特性 27
2.3.3 云數據庫與傳統(tǒng)的分布式數據庫 27
2.4
Oracle 12c新增加功能概述 28
2.5 Oracle
12c安裝 29
2.5.1
Oracle 12c數據庫基本組成 30
2.5.2 Oracle 12c安裝前的準備 30
2.5.3
Oracle12c安裝中的概念 32
2.5.4
Oracle12c安裝步驟 33
2.5.5
Oracle 12c卸載步驟 44
小 結 45
習
題 45
第3章
管理Oracle實例 46
3.1
Oracle實例概念 46
3.2
Oracle實例結構 46
3.3 數據庫內存結構 47
3.3.1 系統(tǒng)全局區(qū)SGA(System
Global Area) 48
3.3.2 程序全局區(qū)PGA 52
3.3.3 用戶全局區(qū)UGA 52
3.3.4
Oracle數據庫的內存管理 53
3.4 進程管理 54
3.4.1進程分類 54
3.4.2 服務進程 55
3.4.3 共享服務器配置 57
3.4.4 后臺進程 59
小 結 63
習
題 64
第4章 管理數據庫存儲結構 65
4.1 物理數據庫結構 65
4.1.1 數據文件 66
4.1.2 控制文件 66
4.1.3 聯(lián)機重做日志文件 67
4.1.4 歸檔重做日志文件 69
4.2 邏輯數據庫結構 71
4.2.1 數據塊 71
4.2.2 區(qū) 72
4.2.3 段 72
4.2.4表空間 74
4.3 數據字典和動態(tài)性能視圖 76
4.3.1數據字典 76
4.3.2 動態(tài)性能視圖 77
小 結 78
習
題 78
第5章 管理Oracle網絡結構 79
5.1
Oracle網絡服務組成 79
5.1.1 Oracle NET 79
5.1.2
監(jiān)聽程序 81
5.1.3
Oracle連接管理器 82
5.1.4
Oracle應用解決方案 84
5.2 網絡配置概念 85
5.2.1 服務名 86
5.2.2 連接描述符 86
5.2.3 網絡服務名 86
5.2.4 連接字符串和連接標識符 87
5.3 服務器網絡配置 87
5.3.1
Oracle網絡工具 87
5.3.2
監(jiān)聽程序的配置 88
5.3.3 共享服務器配置 92
5.4 客戶端網絡配置 95
5.4.1命名方法分類 95
5.4.2命名方法的配置 96
5.4.3 共享服務器方式的客戶端配置 100
小
結 101
習
題 101
第6章 SQL工具與SQL語言基礎 102
6.1
SQL語言簡介 102
6.2
SQL Plus工具 103
6.2.1
SQL Plus的啟動和退出 103
6.2.2
SQL Plus基本概念 104
6.2.3
SQL Plus命令 105
6.3
SQL Developer工具 110
6.3.1
SQL Developer基礎 110
6.3.2
執(zhí)行SQL語句 114
6.4
SQL語言的數據類型 114
6.5
SQL語言運算符 117
6.6
SQL語言中的函數與表達式 118
6.6.1
SQL語言的函數 118
6.6.2
SQL語言的表達式 120
6.7
SQL語言中的條件運算 121
6.8
SQL語言的數據格式模式 122
6.9
SQL語言的語句 124
6.10
SQL Loader工具 125
6.10.1
SQL Loader結構 125
6.10.2
SQL Loader啟動 126
6.10.3 使用SQL Loader裝入數據 127
小
結 129
習 題 130
第7章
數據庫管理 131
7.1 建立數據庫的準備 131
7.1.1 數據庫規(guī)劃 131
7.1.2 建立數據庫完成的操作 132
7.2 數據庫初始化參數 132
7.2.1初始化參數文件 133
7.2.2 服務器參數文件 135
7.2.3 查看初始化參數的值 137
7.3 數據庫建立方法 138
7.3.1 用DBCA創(chuàng)建數據庫 138
7.3.2 手工創(chuàng)建數據庫 149
7.4 數據庫的操作 152
7.4.1 數據庫啟動 152
7.4.2 關閉數據庫 155
7.4.3 刪除數據庫 156
7.5 監(jiān)控數據庫 157
7.5.1
診斷數據管理 157
7.5.2
跟蹤文件(Trace File) 157
7.5.3
警告文件(Alert File) 158
小
結 159
習
題 159
第8章 管理數據庫結構 161
8.1 表空間管理 161
8.1.1 建立表空間 161
8.1.2 刪除表空間 165
8.1.3 修改表空間 166
8.1.4 查詢表空間信息 168
8.2 數據文件管理 170
8.2.1 建立數據文件 170
8.2.2 改變數據文件大小 171
8.2.3 改變數據文件的可用性 172
8.2.4 改變數據文件的名稱和位置 172
8.2.5 刪除數據文件 174
8.2.6 查詢數據文件信息 174
8.3 管理控制文件 176
8.3.1 多路控制文件 176
8.3.2 新建控制文件 177
8.3.3 刪除控制文件 179
8.3.4 查詢控制文件信息 180
8.4 管理聯(lián)機重做日志文件 181
8.4.1 新建聯(lián)機重做日志組和日志文件 181
8.4.2 改變聯(lián)機重做日志文件的名稱和位置 182
8.4.3 刪除重做日志組和日志組成員 183
8.4.4 手工日志切換和清空日志組 184
8.4.5 查詢聯(lián)機重做日志信息 185
8.5 管理歸檔重做日志文件
186
8.5.1 設置數據庫的歸檔模式 187
8.5.2 手工歸檔 189
8.5.3 查看歸檔日志信息 190
小
結 193
習 題 193
第9章 數據庫對象管理 194
9.1 模式和模式對象 194
9.1.1 模式和模式對象 194
9.1.2 CREATE SCHEMA語句 195
9.1.3
SYS和SYSTEM模式 196
9.2 管理表 196
9.2.1 創(chuàng)建表 196
9.2.2 表的查詢、統(tǒng)計和排序 199
9.2.3 刪除表 206
9.2.4 恢復刪除表 207
9.2.5 修改表 208
9.2.6 管理表的約束 211
9.2.7 查詢表信息 215
9.2.8 表的記錄操作 216
9.3 索引管理 219
9.3.1 建立索引 219
9.3.2 修改和刪除索引 220
9.3.3 查詢索引信息 221
9.4 管理視圖 222
9.4.1 創(chuàng)建視圖 222
9.4.2 刪除和修改視圖 224
9.4.3 視圖的使用 225
9.4.4 查詢視圖信息 227
9.5 管理序列 227
9.5.1 創(chuàng)建序列 228
9.5.2 刪除和修改序列 229
9.5.3 查詢序列信息 229
9.6 管理同義詞 230
9.6.1 創(chuàng)建同義詞 230
9.6.2 刪除同義詞 231
9.6.3 查詢同義詞信息 231
9.7 管理數據庫鏈接 231
9.7.1 創(chuàng)建數據庫鏈接 232
9.7.2 刪除數據庫鏈接 233
9.7.3 查詢數據庫鏈接信息 234
9.8 用SQL
Developer管理數據庫對象 234
小
結 237
習
題 237
第10章 數據庫安全與事務管理
239
10.1 用戶管理 239
10.1.1 預定義用戶名 240
10.1.2
PUBLIC用戶組 241
10.1.3 創(chuàng)建用戶 241
10.1.4 修改用戶和刪除用戶 243
10.1.5 查詢用戶信息 244
10.1.6 操作系統(tǒng)認證方式 245
10.2
概要文件 245
10.2.1 主要資源參數和口令參數 246
10.2.2 創(chuàng)建和分配概要文件 247
10.2.3 修改和刪除概要文件 249
10.2.4 概要文件的激活和禁用 249
10.2.5 查詢概要文件信息 250
10.3 權限和角色管理 250
10.3.1 系統(tǒng)權限和對象權限 250
10.3.2 授予和回收權限 252
10.3.3 查詢用戶權限信息 254
10.3.4 角色管理 256
10.4
事務控制 258
10.4.1 事務概念與特點 258
10.4.2 事務提交 259
10.4.3 保存點 260
10.4.4 事務回滾和命名 261
10.5 并發(fā)控制 262
10.5.1
Oracle隔離等級 262
10.5.2
數據一致性和設置隔離等級 263
10.5.3
Oracle鎖 264
10.6 會話控制 264
10.6.1
查詢用戶會話信息 264
10.6.2
中止和修改會話 266
小
結 268
習 題 268
第11章
數據庫備份與恢復 270
11.1 備份與恢復的基本概念 270
11.1.1
數據庫故障類型 270
11.1.2
備份的類型 272
11.1.3
修復和恢復 274
11.2 用戶管理的數據庫備份 276
11.2.1 數據庫備份方法 276
11.2.2 備份控制文件 278
11.2.3備份歸檔重做日志文件 279
11.3 用戶管理的數據庫恢復 279
11.3.1 修復命令 279
11.3.2 非歸檔模式下數據庫的恢復 280
11.3.3 歸檔模式下完全介質修復 282
11.3.4 歸檔模式下的不完全介質修復 284
11.3.5 修復控制文件 285
11.3.6 修復歸檔重做日志文件 286
11.4
RMAN簡介 287
12.4.1
RMAN組成 287
11.4.2 RMAN的啟動與退出 288
11.4.3 RMAN的