資深數據庫專(zhuān)家、UNIX系統專(zhuān)家、系統架構師近20年一線(xiàn)工作經(jīng)驗結晶,高屋建瓴,指導性強;
《Oracle數據庫性能優(yōu)化的藝術(shù)》用系統化分析的方法,從系統工程的角度深入闡述了具有普遍意義的數據庫性能評估與優(yōu)化的思維方法與工作流程。
前言
第1章 綜述:優(yōu)化是一個(gè)系統工程
1.1 性能問(wèn)題是一個(gè)系統工程
1.1.1 考慮性能問(wèn)題的不同階段
1.1.2 考慮性能問(wèn)題的不同方面
1.1.3 性能架構中的問(wèn)題分類(lèi)
1.2 性能改進(jìn)的工程方法
1.2.1 不要希望一步到位!
1.2.2 有時(shí)也能一步到位?
1.2.3 性能改進(jìn)工作流程
1.2.4 建立性能分析流程圖
1.2.5 編程中應盡量避免的問(wèn)題
1.2.6 緊急事件性能處理
第2章 設計與優(yōu)化:物理數據庫結構設計
2.1 數據庫的特定運行平臺
2.2 物理設計與性能的關(guān)系
2.3 應用框架與性能特征
2.4 物理表設計的關(guān)注點(diǎn)
2.4.1 從邏輯模型到物理模型
2.4.2 物理數據庫設計的范圍
2.4.3 規范化的設計
2.4.4 反規范化設計
2.4.5 另類(lèi)反規范化
2.4.6 是否反規范化
2.5 索引的初始設計
2.5.1 索引對象的基本結構
2.5.2 索引的可選擇性指標
2.5.3 索引的雙面性特征
2.5.4 索引的類(lèi)型
2.5.5 索引的初始確定
2.5.6 臨時(shí)表的使用
第3章 部署與優(yōu)化:準備基本運行環(huán)境
3.1 性能問(wèn)題在表象上的欺騙性
3.2 理解數據庫需要的系統資源
3.2.1 IO資源的使用
3.2.2 內存資源的使用
3.2.3 CPU資源的使用
3.2.4 解讀內存與CPU狀態(tài)
3.3 小型機數據庫部署準備
3.3.1 AIX的部署準備
3.3.2 HP-UX的部署準備
3.3.3 Solaris的部署準備
3.4 X86系統數據庫部署準備
3.4.1 Linux系統的部署準備
3.4.2 Windows系統的部署準備
第4章 部署與優(yōu)化:數據庫的優(yōu)化部署
4.1 實(shí)例初始配置注意點(diǎn)
4.2 數據庫空間使用關(guān)注
4.3 表空間的創(chuàng )建管理
4.4 創(chuàng )建表時(shí)的性能因素
4.5 數據導入與索引維護
第5章 實(shí)例優(yōu)化:配置高效運行環(huán)境
5.1 實(shí)例配置與緩存優(yōu)化
5.1.1 啟用自動(dòng)內存管理
5.1.2 主機內存分配原則
5.1.3 使用緩存顧問(wèn)工具
5.1.4 緩存的命中率問(wèn)題
5.1.5 緩存命中率分析
5.1.6 精細化緩存的配置
5.2 SQL與緩存的使用
5.2.1 緩存優(yōu)化
5.2.2 查看數據緩存內容
5.2.3 共享池的效率檢查
5.2.4 重做日志緩存問(wèn)題
5.3 PGA內存分配原則
5.4 Oracle虛擬化關(guān)注點(diǎn)
5.4.1 IO問(wèn)題上的關(guān)注點(diǎn)
5.4.2 內存問(wèn)題上的關(guān)注點(diǎn)
5.4.3 CPU問(wèn)題上的關(guān)注點(diǎn)
5.4.4 故障恢復問(wèn)題的解決
第6章 存儲優(yōu)化:配置高效存儲環(huán)境
6.1 IO問(wèn)題的表象與內涵
6.2 存儲介質(zhì)的基礎配置
6.2.1 使用邏輯卷技術(shù)
6.2.2 設定存儲參數
6.3 存儲IO能力探究
6.3.1 Orion的安裝
6.3.2 Orion的使用
第7章 綜合部署:Oracle可靠性設置
7.1 數據庫設置的綜合考慮
7.1.1 設置數據庫的內存使用
7.1.2 數據庫的進(jìn)程使用設置
7.1.3 設置數據庫IO模式
7.1.4 設置數據庫的歸檔模式
7.1.5 使用閃回恢復區歸檔
7.1.6 設置冗余控制文件
7.1.7 保留控制文件信息
7.1.8 設置聯(lián)機重做日志文件
7.1.9 設置聯(lián)機重做日志組數
7.1.10 設置數據塊校驗和檢查
7.1.11 打開(kāi)性能時(shí)間統計
7.1.12 表空間和段管理方式
7.1.13 設定多臨時(shí)表空間和組
7.1.14 使用自動(dòng)撤銷(xiāo)管理
7.1.15 設置空間錯誤延時(shí)
7.1.16 設置數據庫閃回
7.2 RAC下的設置
7.2.1 注冊遠程監聽(tīng)器的實(shí)例
7.2.2 設置內部互聯(lián)網(wǎng)絡(luò )
7.3 加密表數據
7.4 加密表空間
第8章 對象優(yōu)化:大表分區方式部署
8.1 分區技術(shù)適用的范圍
8.2 分區技術(shù)的基本概念
8.2.1 分區表的結構
8.2.2 分區部署的收益
8.2.3 分區部署的成本
8.2.4 索引分區
8.3 分區表的管理操作
8.3.1 面向分區的管理
8.3.2 面向分區的操作
8.3.3 面向分區的恢復
8.4 分區的技術(shù)實(shí)現
8.4.1 基礎分區的實(shí)現
8.4.2 組合分區的擴展
8.4.3 擴展分區技術(shù)
8.4.4 分區表的數據壓縮
8.4.5 查看數據存儲位置
8.4.6 分區鍵數據的改變
8.4.7 分區方式選擇問(wèn)題
8.4.8 使用分區顧問(wèn)工具
第9章 索引定義:索引設置與執行計劃
9.1 索引對象
9.2 Oracle優(yōu)化器
9.2.1 優(yōu)化器的選擇
9.2.2 優(yōu)化器的設置
9.2.3 數據掃描問(wèn)題
9.3 索引的技術(shù)指標
9.3.1 索引的選擇性
9.3.2 索引的簇化率
9.3.3 索引二元高度
9.3.4 直方圖的使用
9.4 索引與SQL優(yōu)化
9.5 避免索引不作為
9.5.1 非等式運算
9.5.2 Null值的比對
9.5.3 函數的調用
9.6 創(chuàng )建虛擬的索引
9.7 創(chuàng )建壓縮的索引
9.8 索引的使用監測
9.8.1 創(chuàng )建不可視索引
9.8.2 索引的可用狀態(tài)
9.8.3 監測索引的使用
9.9 對分區表建立索引
第10章 實(shí)例效率:識別數據庫內部作為
10.1 研究數據庫運行效率
10.1.1 定義和量化性能
10.1.2 統計分析的要素
10.1.3 性能狀態(tài)的統計
10.1.4 其他相關(guān)統計
10.2 操作系統的使用方法
10.2.1 性能監視的手段
10.2.2 使用vmstat
10.2.3 使用iostat
10.2.4 使用sar
10.2.5 使用nmon命令
10.3 調整計劃探討
第11章 優(yōu)化踐行:數據庫層面的優(yōu)化
11.1 Oracle自動(dòng)統計
11.1.1 統計數據的解釋
11.1.2 匯總的統計數據
11.2 使用AWR
11.2.1 在OEM中訪(fǎng)問(wèn)AWR
11.2.2 用API管理AWR快照
11.2.3 使用度量基線(xiàn)
11.2.4 AWR工作報告
11.3 使用ADDM
11.3.1 ADDM內部結構
11.3.2 ADDM使用示例
11.3.3 ADDM環(huán)境設置
11.3.4 ADDM手工獲得
第12章 優(yōu)化踐行:操作系統層面的優(yōu)化
12.1 平臺的性能相關(guān)性
12.2 分配和調度內存資源
12.2.1 使用大的內存頁(yè)面
12.2.2 設定內存替換閾值
12.2.3 設定內存空閑閾值
12.2.4 對應設置應用內存
12.3 設置系統進(jìn)程資源
12.4 系統IO資源的使用
12.4.1 優(yōu)化使用異步IO
12.4.2 優(yōu)化文件系統掛載
12.4.3 優(yōu)化應用IO模式
12.5 關(guān)閉系統中無(wú)用的服務(wù)
12.6 監控主機資源使用
12.6.1 服務(wù)器性能監控
12.6.2 分析系統的性能
寫(xiě)在最后