Oracle DBA手記︰數據庫診斷案例與性能優化實踐

Oracle DBA手記︰數據庫診斷案例與性能優化實踐
定價:359
NT $ 359
 

內容簡介

本書由多位工作在數據庫維護一線的工程師合著而成,包含了精心挑選的數據庫診斷案例與性能優化實踐經驗,內容涉及Oracle典型錯誤的分析和診斷,各種SQL優化方法(包括調整索引,處理表碎片,優化分頁查詢,改善執行計劃等),以及優化系統性能的經驗。

  作者不僅強調案例的實用性和可操作性,更著重再現解決問題的過程和思路並總結經驗教訓,希望將多年積累的工作方法,以及對DBA的職業發展的感悟展現出來,供廣大Oracle DBA借鑒參考。
 

目錄

第1篇 DBA工作手記
Eygle的DBA工作手記(作者︰蓋國強)
DBA 2.0的時代
DBA日常工作職責——我對DBA的7點建議
DBA最重要的素質有哪些
DBA職業生涯之誤刪除篇
DBA警世錄——有些習慣DBA需要養成
RAC環境下故障處理一則
SQL_TRACE跟蹤與診斷
臨時表空間組導致遞歸SQL高度解析案例
使用閃回查詢恢復誤刪除的數據
使用ErrorStack進行錯誤跟蹤及診斷
斷電故障導致ASM DiskGroup故障及恢復案例
共享池的改進與ORA-04031的變化
共享內存無法正常釋放的處理
LOG_BUFFER設置與變遷
LOGMNR簡單而強大的工具
從數據字典中獲得更多知識
Yangtingkun的DBA工作手記(作者︰楊廷琨)
利用SQL解釋一個魔術
ORA-600(17069)錯誤的解決過程
V$SQL視圖顯示結果異常的診斷
存儲過程ORA-4068之錯誤解析
一次網絡連接錯誤的診斷
淺談JOB和DATABASE LINK的一個特點
一次ORA-01041錯誤診斷
一個ORA-604錯誤的分析
ORA-7445(kdodpm)錯誤
函數索引產生隱藏列
用SQL解決一道有趣的題
老熊的DBA手記(作者︰熊軍)
TNS_ADMIN和OEM引起的血案
木馬防護軟件引起的DB Link故障
壞塊與數據恢復
IP地址沖突引發的ORA-12541錯誤
ORA-8103錯誤的處理
半瓶的DBA工作手記(作者︰鄒德平)
SQL執行計劃改變導致查詢變慢
大數據量操作導致Data Guard延遲
Oracle重做日志切換頻繁導致的性能問題
一次ORA-01438錯誤的解決辦法
使用LogMiner查找日志信息
通過合並碎片來優化Oralce的存儲結構
RAC環境下GES報警情況的處理
第2篇 診斷案例篇
ASM案例分析與診斷(作者︰楊廷琨)
ASM實例連接之ORA-1012錯誤分析
ASM空間擴展故障解決
ASM創建表空間之ORA-569錯誤解決
一次監听故障的診斷與處理(作者︰熊軍)
問題診斷分析
監听的工作原理
問題的解決
總結
ORA系列錯誤與診斷(作者︰楊廷琨)
解決ORA-600(16164)錯誤的過程
一次ORA-942錯誤的跟蹤
刪除表空間出現ORA-22868錯誤
一次ORA-1461錯誤處理過程
ORA-01200錯誤裸設備恢復(作者︰蓋國強)
問題的發現
問題的分析
控制文件與數據文件頭
物理設備確認
解決方案的確定
恢復執行
使用rman管理裸設備文件
Oracle放棄對于裸設備的支持
Oracle數據庫版本的含義
Oracle數據庫無響應故障的處理(作者︰熊軍)
無響應故障現象分析
無響應故障成因分析
無響應故障處理流程
怎樣避免數據庫出現無響應故障
一個實際的案例處理過程
案例的總結分析
總結
RAC環境診斷案例一則(作者︰楊廷琨)
第3篇 SQL調優篇
合理利用索引解決性能問題(作者︰熊軍)
案例一︰利用復合索引解決性能問題
B Tree索引的結構及特點
Oracle如何掃描索引
案例二︰巧用索引降序掃描解決性能問題
通過索引訪問數據時的成本計算
案例三︰降低clustering factor,解決性能問題
總結
SQL優化與調整實踐(作者︰楊廷琨)
HINT如何跨越視圖生效
SQL優化引出的問題
SQL語句中常量的處理
一次更新操作的優化
索引訪問與數據讀取(作者︰蓋國強)
高DB Time使用之SQL發現
執行計劃獲取及索引優化
INDEX FAST FULL SCAN與排序
降序INDEX FULL SCAN消除排序的優化
INDEX FAST FULL SCAN的數據訪問
INDEX FULL SCAN的數據訪問
鍵值順序與索引訪問的性能
使用基于函數的索引提升查詢性能
SQL優化之Everything is possible(作者︰楊廷琨)
UNION效率比UNION ALL效率高
恆等查詢條件對查詢的影響
兩層GROUP BY的效率反而比一層GROUP BY高
增加DISTINCT後查詢效率反而提高
增加索引改變執行計劃
第4篇 性能優化篇
執行計劃與統計信息案例 (作者︰楊廷琨)
CBO使用CHECK的一個Bug
查詢正常作為條件報錯的問題
JOB調用DBMS_STATS包出錯的診斷
長時間LATCH FREE等待——記一次系統異常的診斷過程
一次ORA-4030問題診斷及解決
Oracle數據庫性能與統計信息(作者︰熊軍)
一個真實的案例
統計信息的重要性
統計信息的相關知識
面臨的問題與挑戰
關于統計信息的常見誤區
總結
聚簇因子、柱狀圖與執行計劃(作者︰段林仲)
CLUSTERING_FACTOR對于執行計劃的影響
Cursor_sharing與SQL的執行計劃
Histograms對于執行計劃的影響
表碎片及分頁查詢優化(作者︰蓋國強)
性能分析的起點
AWR與OSWatcher診斷案例
Statspack之案例分析
數據表之統計數據分析
碎片的消除與性能優化
Cache與Nocache對于性能的影響
ERP系統中Cache表案例分析
對于分頁查詢的優化
DBMS_PROFILER包用于診斷與優化
總結
一次排序的調整與優化(作者︰段林仲)
Statspack之問題發現
SQL排序之問題定位
SQL優化與問題解決
優化後性能比較
參考文獻
索引
 

2.0時代的DBA專家圈子

看了Eygle發來的《Oracle DBA手記》的手稿,感到這本書的寫作思路很有些新意。隨著數據庫技術自動化程度的提高,DBA工作價值開始擴展到更大的層面,因此共享一些探路者的心得變得尤為可貴。暴露其思維過程,是Web 2.0時代技術圈子的一大特點。在以前的某些時代,有些工程師們僅僅把技術作為賺錢的手藝,很多操作技巧都是密不外傳的,總怕“教會了徒弟,餓死了師父”。本書的編排是對此種落後思維的一種否定。具體表現為三大特色:

編輯與遴選:搜索時代,我們更需要向導

在搜索無處不在的年代,某種知識入門的難度已經不在于知識的獲取,而在于知識的篩選。這個時候,一個過來人的理解往往是最好參考。如果說科學家們的樂趣來自對造物主的發現,那麼頂級工程師們的樂趣則來自于理解另外一些人的聰明智慧。歸根到底,整個軟件行業都建立在基于數學基礎的人類思維的設計,從根子上說,軟件技術本身都是人聰明智慧的結晶。另一方面,由于數據庫技術應用環境的復雜性,經驗也是不可缺少的。對于一個入門DBA來說,有兩樣東西對進階比較關鍵:一是理解設計者是怎麼想的,二是理解使用者環境的復雜性。兩者都需要經驗的積累,需要勤奮。

集體創作:小團體的自組織帶來多維度的啟發

在技術學習上,每個人的根器不同,因此,啟發的方式也不同。幾位DBA高手把講自己日常的體會篩選成集,一方面基于術業專攻的原則,另一方面對讀者的啟發帶來了維度的增加。可能某一讀者恰好喜歡楊廷琨的理解方式和文字表達,那他可以一段時間內多花時間去看他那1500多篇博客的積累。/町能另一些人因為欣賞Eygle的技術能力與為人方式,因此虛擬地拜師學藝,可以少走彎路。師傅領入門,修行在個人,武俠小說里拜師學藝的傳奇故事,現在可以在網絡上更大範圍地復制開來,只是讀者現在有了更多選擇。此書的集體創作帶來更多維度,有助程度不同的讀者增加理解。

分享心得:我是怎麼想的

古代的知識分子,書房是不讓別人進的,怕的是被別人看去了心思。Web 2.0的精神是反其道而行之。如果技術知識的發展速度遠遠超過個人的學習能力,形成一種共享文化,對于少走彎路是極其必要的。而其中的關鍵,就是暴露思維過程,告訴別人自己在特定問題上的想法。這些想法慢慢會匯聚成一種思維方法,這些思維方法,是比具體某個版本的操作技巧更為長遠的。本書第一編的各位作者的手記,恰是體現了這麼一種精神。

本書發行之時,恰逢Oracle llgR2發布,新版本的設計已經開始面向數據中心,增加了更多的技術特性,DBA們的眼光,也不再局限于數據庫本身,而應該放眼更大的數據中心,建設這個更大的主題。因此,更希望本書對于夯實DBA們的日常工作大有裨益,可以有機會抬頭看看更長遠的方向。

劉松
甲骨文大中華區產品戰略總監
2009年10月
網路書店 類別 折扣 價格
  1. 新書
    $359