ORACLE資料庫技術實用詳解

ORACLE資料庫技術實用詳解

《ORACLE資料庫技術實用詳解》是由韓思捷編著的計算機套用技術類書籍;該書由電子工業出版社於2008年出版發行。全書共21章,系統全面地介紹了Oracle10g資料庫的結構、管理和最佳化,內容涵蓋整個10gOCP的考試範圍,包括Oracle10g資料庫的體系架構、存儲結構、網路服務、備份與恢復、閃回(flashback)管理、資源管理、調度管理、自動存儲管理(ASM)、自動化性能監控與調優等;既著重介紹了在實際工作中需要用到的管理知識,又兼顧了OCP考試所涉及的考點。

基本信息

版權資訊

書 名: ORACLE資料庫技術實用詳解

作 者:韓思捷

出版社電子工業出版社

出版時間: 2008

ISBN: 9787121064029

開本: 16

定價: 55.00 元

內容簡介

本書編排由淺入深,既詳細介紹了Oracle10g資料庫表面的行為特徵(也就是“是什麼”),又闡明了其行為背後的原因(也就是“為什麼”)。比如undo表空間是如何提供一致性讀、檢查點的工作原理等。

本書內容豐富,語言通俗易懂,實用性強,便於讀者學習、實踐以及參加10gOCP的考試,尤其適合於初學者以及希望更進一步了解Oracle資料庫的人群。本書既可作為各大中專院校相關專業和培訓班的輔導教材和參考用書,也可作為資料庫系統開發套用技術人員和自學者的學習和參考用書。

目錄

第1章 Oracle 10g資料庫簡介 

1.1 Oracle 10g格線計算簡介

1.2 Oracle體系結構簡介

1.3 Oracle資料庫存儲簡介

第2章 安裝Oracle 10g軟體及創建資料庫

2.1 安裝之前的準備

2.2 開始安裝

2.3 創建資料庫

第3章 數據字典

3.1 數據字典表

3.2 動態性能視圖

第4章 初始化參數與實例

4.1 初步了解啟動和關閉資料庫實例

4.2 靜態參數檔案

4.3 動態參數檔案

4.4 再議實例的啟動和關閉

4.5 使用EM管理實例

第5章 記憶體組件與Oracle進程

5.1 用戶與Oracle資料庫伺服器建立連線

5.2 深入Shared Pool

5.2.1 shared pool的記憶體結構

5.2.2 library cache和dictionary cache概述

5.2.3 解析SQL語句的過程

5.2.4 設定shared pool

5.3 深入Log Buffer

5.3.1 log buffer的記憶體結構

5.3.2 log buffer的內部管理機制

5.3.3 log buffer的設定

5.4 深入Buffer Cache

5.4.1 Buffer Cache的記憶體結構

5.4.2 Buffer Cache的管理機制

5.5 其他記憶體池

5.6 自動共享記憶體管理

5.7 PGA管理

5.7.1 PGA的概念及其包含的記憶體結構

5.7.2 PGA自動管理

第6章 存儲管理

6.1 表空間

6.1.1 表空間的空間管理

6.1.2 創建和管理表空間

6.1.3臨時表空間和臨時表空間組

6.1.4 非默認數據塊大小的表空間

6.2 在線上日誌檔案

6.2.1 日誌切換

6.2.2 管理日誌檔案

6.3OMF

6.4 數據塊的結構

第7章 undo表空間管理

7.1 DML語句與undo

7.2 undo的作用

7.3 配置AUM

7.4 管理undo表空間

第8章 用戶、許可權和角色管理

8.1 用戶管理

8.1.1 創建和刪除用戶

8.1.2 Profile與用戶管理

8.2 許可權管理

8.2.1 系統許可權

8.2.2對象許可權

8.3 角色管理

第9章 對象管理

9.1 表

9.1.1 創建普通表

9.1.2 管理普通表

9.1.3 約束(constraint)

9.1.4 使用分區表、索引組織表、簇表

9.2 索引

9.2.1 B樹索引

9.2.2 點陣圖(bitmap)索引

9.2.3 管理索引

9.3 其他對象

9.4 可恢復的空間分配(Resumable Space Allocation)

第10章 閂鎖、鎖定和並發性

10.1 閂鎖(latch)概述

10.2 鎖定(lock)概述

10.3 DML事務鎖定的機制

10.3.1 行級鎖(TX鎖)

10.3.2 表級鎖(TM鎖)

10.4 解決DML事務鎖定的衝突

10.4.1 鎖定相關視圖

10.4.2 檢測並解決衝突

10.4.3 死鎖

10.5 DDL鎖定

10.6 創建自己的鎖定

第11章 配置網路環境

11.1 用戶與Oracle資料庫伺服器建立連線

11.2 配置監聽器

11.3 配置客戶端

11.4 配置共享連線

11.5 調用外部過程

第12章 手工管理的備份和恢復

12.1 備份

12.1.1 冷備份

12.1.2 熱備份

12.2 介質恢復

12.2.1 完全恢復

12.2.2 不完全恢復

12.2.3 基於時間點的不完全恢復

12.2.4 丟失所有控制檔案時的恢復

第13章 RMAN管理的備份和恢復

13.1 配置RMAN

13.1.1 RMAN的體系結構

13.1.2 快速閃回區(Flash Recovery Area)

13.1.3 使用Configure命令配置RMAN

13.2 使用RMAN完成備份

13.2.1 備份數據檔案

13.2.2 備份歸檔日誌檔案和控制檔案

13.2.3 增量備份

13.2.4 顯示備份信息

13.3 使用RMAN進行恢復

13.3.1 完全恢復

13.3.2 不完全恢復

13.4 配置恢複目錄

第14章 閃回

14.1 閃回資料庫(flashback database)

14.2 閃回刪除(flashback drop)

14.3 閃回表(flashback table)

14.4 閃回版本查詢(flashback version query)

14.5 閃回事務查詢(flashback transaction query)

14.6 閃回查詢(flashback query)

第15章 自動化管理

15.1 自動化管理概述

15.2 AWR體系結構

15.2.1 AWR體系概述

15.2.2 告警信息和指標

15.2.3 基準線

15.3 管理AWR及生成AWR報表

15.4 ASH體系結構

15.5 訪問ASH

15.5.1 轉儲方式訪問ASH

15.5.2 使用SQL語句訪問ASH

15.5.3 創建ASH報表方式訪問ASH

15.5.4 通過Database Control的診斷頁面訪問ASH數據

15.6ADDM

15.7 顧問(Advisor)

15.7.1 使用記憶體顧問

15.7.2 使用恢復(MTTR)顧問

15.7.3 使用SQL Tuning Advisor(STA)

15.7.4 使用SQL Access Advisor(SAA)

第16章 ASM管理

16.1 ASM的概念

16.2 創建ASM實例

16.3 管理ASM磁碟組

16.4 管理ASM檔案

16.5 遷移到ASM

16.6 ASMCMD工具

第17章 資源管理

17.1 資源管理器的概念

17.2 資源管理器的使用

17.2.1 創建資源用戶組

17.2.2 創建資源計畫

第18章 調度管理

18.1 基於時間的調度任務

18.2 基於事件的調度任務

18.3 調度任務的高級選項

18.3.1 使用job class

18.3.2 使用window

第19章 數據遷移

19.1 導出導入

19.2 可傳輸表空間

19.3 數據泵(Data Pump)

19.3.1 導出數據泵(expdp)

19.3.2 導入數據泵(impdp)

19.4 外部表

19.5 可傳輸資料庫

第20章 安全

20.1 審計

20.1.1強制審計

20.1.2 標準資料庫審計

20.1.3 基於值的審計

20.1.4 精細化審計(Fine-Grained Auditing)

20.1.5 對DBA的審計

20.2 虛擬專用資料庫(VPD)

20.2.1 基於行的VPD

20.2.2 基於列的VPD

20.3 透明數據加密(TDE)

20.4 對備份進行加密

20.4.1 透明加密模式

20.4.2 基於密碼的加密模式

20.4.3 混合加密模式

第21章 全球化支持

21.1 字元集

21.2 資料庫字元集

21.3 客戶端字元集

21.4 客戶端字元集與伺服器端字元集的轉換

21.5 語義排序

文摘

第1章 Oracle10g資料庫簡介

1.3 Oracle資料庫存儲簡介

我們已經了解到,Oracle資料庫實際上是位於物理磁碟上的多個檔案的邏輯集合,主要包括數據檔案、在線上日誌檔案和控制檔案。用戶的數據實際存放在數據檔案里。

那么我們來想像一下,如果要獲取某個具體數據的時候,比如要檢索雇員表里雇員號為100的雇員信息,我們應該怎么做?

我們知道雇員信息是位於數據檔案里的,那么最簡單的方法就是從第一個數據檔案的起點開始,依次讀取每個檔案的最小組成單位(如果位於作業系統上,則作業系統塊就是它的最小組成單位,每個數據檔案都由許多個作業系統塊組成;如果直接放在磁碟上,比如裸設備或ASM磁碟上,則磁碟塊就是它的最小組成單位,這時每個數據檔案就是由多個磁碟塊組成的)里所包含的數據,判斷其中是否存在雇員信息。如果沒有則讀取下一個最小組成單位;如果有雇員信息,則讀取其雇員號,判斷該雇員號是否等於100,如果不是,則讀取下一個最小組成單位。如果是,則返回該雇員信息。如此這般,直到該檔案全都讀取完畢為止。然後繼續讀取下一個數據檔案,再做一遍這樣的事情,直到讀完所有的數據檔案。這樣才能找到所有雇員號為100的雇員信息。

很顯然,這種方式是低效的。特別是如果數據檔案很多,總數據量很大,比如上百GB,再加上並發用戶數很多,很多用戶都查找數據,那這種查找數據的方式是幾乎不可能完成的任務。這裡僅僅是舉了一個查詢的例子,如果再引入修改數據的話,那後果更不可想像。

Oracle資料庫當然不會採用這種方式。為了更好地管理物理磁碟上的數據檔案,Oracle引入了邏輯存儲的概念。所謂邏輯存儲的概念,可以理解為,Oracle把數據在物理檔案里擺放的位置等信息都以數據行的形式存放在了相關的表里。

相關詞條

相關搜尋

熱門詞條

聯絡我們