Oracle Database 10g性能調(diào)整與優(yōu)化

出版時(shí)間:2009-1  出版社:清華大學(xué)  作者:尼米克  頁(yè)數(shù):869  譯者:薛瑩  
Tag標(biāo)簽:無  

前言

0.1  64位和Oracle打破了時(shí)空連續(xù)性許多人認(rèn)為20世紀(jì)90年代中期Internet的出現(xiàn)是我們一生中再也不會(huì)遇到的事件。他們的這個(gè)觀點(diǎn)完全錯(cuò)誤!在本書的上一版中,我提到TB級(jí)的數(shù)據(jù)庫(kù)將在不久后普及,幾乎沒有人相信我的觀點(diǎn)。但是現(xiàn)在確實(shí)發(fā)生了這種情況——TB級(jí)的數(shù)據(jù)庫(kù)現(xiàn)在非常普遍。隨著Oracle 10g的發(fā)布,PB(1000TB)級(jí)的數(shù)據(jù)庫(kù)將開始被人們所使用;而在Oracle 11g中,甚至可能出現(xiàn)EB(1 000 000TB)級(jí)的數(shù)據(jù)庫(kù)(在Oracle 12g中,幾乎可以確定會(huì)出現(xiàn)這種數(shù)據(jù)庫(kù))。很少有人了解到Internet時(shí)代的出現(xiàn)直接歸因于32位計(jì)算機(jī)和32位計(jì)算提供的理論可能性所產(chǎn)生的連鎖反應(yīng)。Oracle于1983年引入了32位計(jì)算,然而直到20世紀(jì)90年代中期硬件功能可滿足32位計(jì)算的需求時(shí),許多公司才開始完全地利用32位計(jì)算(經(jīng)過了大約12年)。信息時(shí)代是往前跨越的另一大步,其前進(jìn)步伐無限大于Internet時(shí)代。我們現(xiàn)在正在使用功能非常全面(除了不能挑戰(zhàn)重力)的Oracle 10g,同時(shí)正在步入將來的64位計(jì)算世界。64位計(jì)算于1995年在Oracle 7中引入,通過又一個(gè)12年的發(fā)展,64位計(jì)算于2007年開始普及。下一個(gè)時(shí)代(Generation 64)和64位計(jì)算將前所未有地改變世界,這種改變就從2007年開始。考慮IDC/EMC和位于伯克利的加利福利亞大學(xué)的如下研究:2K:一張打印頁(yè)面1M:1000K1M:一部小說5M:莎士比亞的所有著作10M:一分鐘高保真度的音頻100M:一米高架子上的書籍1G:1000M1G:一輛裝滿書的輕型貨車(或您的SGA(2007年))100G:一層樓的學(xué)術(shù)雜志(或者新的筆記本硬盤(2007年))1T:1000G2T:一個(gè)學(xué)術(shù)研究圖書館(或者您的世界500強(qiáng)數(shù)據(jù)庫(kù)(2007年))2T:YouTube上一天內(nèi)生成的信息量2P:所有學(xué)術(shù)研究圖書館(或者您的Grid SGA(2010年))10T:美國(guó)國(guó)會(huì)圖書館中530 000 000英里的書架730T:YouTube上一年內(nèi)生成的信息量1P:1000T20P:1995年所有硬盤驅(qū)動(dòng)器的容量(或者您的數(shù)據(jù)庫(kù)(2010年))700P:收入少于2億美元的700 000家公司的所有數(shù)據(jù)1E:1000P1E:世界1000強(qiáng)公司的所有數(shù)據(jù)庫(kù)(平均每個(gè)公司1P)1E:接下來世界9000強(qiáng)公司的數(shù)據(jù)庫(kù)(平均每個(gè)公司大約100T)2E:世界上最大型的10 000個(gè)公司(使用的全部數(shù)據(jù)庫(kù))2E:1999年生成的所有信息(可全部容納在一個(gè)Oracle 10g數(shù)據(jù)庫(kù)中(2007年))3E:世界上最大型的1 0000 000個(gè)公司(使用的全部數(shù)據(jù)庫(kù))5E:2003年生成的所有新信息(估計(jì)值,大多數(shù)圖像沒有存儲(chǔ)在數(shù)據(jù)庫(kù)中)6E:2006年生成的所有電子郵件8E:一個(gè)Oracle 10g數(shù)據(jù)庫(kù)的容量(當(dāng)前)12E-16E:1999年之前生成的所有信息(64位駐留內(nèi)存)16E:64位可尋址的內(nèi)存(當(dāng)前)161E:2006年生成的新信息(估計(jì)值,大多數(shù)圖像/視頻沒有存儲(chǔ)在數(shù)據(jù)庫(kù)中)246E:2007年生產(chǎn)的所有硬盤驅(qū)動(dòng)器的容量(估計(jì)值)255E:2007年生成的新信息(估計(jì)值,大多數(shù)圖像/視頻沒有存儲(chǔ)在數(shù)據(jù)庫(kù)中)1000E:2010年生成的新信息(估計(jì)為1Z)1Z:1000E(1Z可估計(jì)為世界所有沙灘上的沙粒數(shù)量——125個(gè)Oracle數(shù)據(jù)庫(kù))1Y:1000Z(1Y可估計(jì)為1000個(gè)人體中的原子數(shù)量)100TY:100萬億的YB,128位可尋址內(nèi)存(將來)如果考慮可尋址內(nèi)存的理論限制,則可以設(shè)想64位計(jì)算的能力。在無符號(hào)16位計(jì)算中,可以直接尋址64K(216字節(jié))的內(nèi)存。隨著這種技術(shù)的巨大進(jìn)步,于1985年出現(xiàn)Windows 1.0(1987年出現(xiàn)弱化圖形的Windows 2.0版本),1990年出現(xiàn)Windows 3.0,不久之后出現(xiàn)客戶端-服務(wù)器版本。我記得在我將SGA增加到超過1M后遇到內(nèi)存問題時(shí),Oracle技術(shù)支持告訴我說“您不會(huì)需要大于1M的SGA”。在無符號(hào)的32位計(jì)算中,我們可以直接尋址4G(232字節(jié))的內(nèi)存(+/-符號(hào)將占用2G內(nèi)存)。對(duì)于標(biāo)準(zhǔn)的Oracle數(shù)據(jù)庫(kù),直接尋址4G內(nèi)存可以極大地增加系統(tǒng)全局區(qū)域(SGA)。在SGA中存儲(chǔ)最常用的數(shù)據(jù),這些數(shù)據(jù)保留在內(nèi)存中以供快速訪問。我們現(xiàn)在一般會(huì)看到GB級(jí)的SGA和TB級(jí)的數(shù)據(jù)庫(kù)。32位Linux和Windows的DBA會(huì)尋求關(guān)于如何將其SGA增加到超過2G或4G的支持。當(dāng)發(fā)展到64位計(jì)算時(shí),相比于Internet時(shí)代的發(fā)展速度,信息時(shí)代的發(fā)展速度以指數(shù)級(jí)增長(zhǎng)。通過使用64位,可尋址內(nèi)存的理論限制(264)變成16E(EB)或18 446 744 073 709 551 616(264字節(jié))字節(jié)的直接可尋址內(nèi)存。查看如下數(shù)字以了解可尋址內(nèi)存的巨大飛躍。

內(nèi)容概要

  本書提供了監(jiān)控、分析和優(yōu)化Oracle Database 10g的方法,由Oracle認(rèn)證大師Richard J.Niemiec傾力打造。書中包含了詳細(xì)的案例研究、最佳實(shí)踐和豐富的0racle新的調(diào)整特性的代碼示例。通過學(xué)習(xí)本書,讀者可以了解到如何選擇最優(yōu)化的索引選項(xiàng),有效地管理驅(qū)動(dòng)器和磁盤陣列,對(duì)查詢執(zhí)行故障檢修,以及可靠地預(yù)測(cè)將來的性能。本書也將詳細(xì)介紹PL/SQL性能增強(qiáng)、初始化文件調(diào)整,以及最新的數(shù)據(jù)庫(kù)調(diào)查和報(bào)告實(shí)用程序。

作者簡(jiǎn)介

作者:(美國(guó))尼米克 (Richard J.Niemiec) 譯者:薛瑩Richard J.Niemiec Richard被Oracle公司授予Oracle認(rèn)證大師——迄今為止,全世界僅有6人獲得此殊榮,因此他是世界范圍內(nèi)公認(rèn)的Oracle專家。他是獨(dú)立Oracle用戶組(IOUG)的前任主管以及中西部Oracle用戶組的現(xiàn)任主管。Richard已經(jīng)被5次命名為IOUG會(huì)議的最佳主講人,并且是企業(yè)家名人紀(jì)念館的成員。目前Richard J.Niemiec任TUSC公司的總裁,該公司旗下有500多個(gè)專業(yè)從事Oracle技術(shù)全方位服務(wù)咨詢和培訓(xùn)的機(jī)構(gòu)。

書籍目錄

第1章  Oracle Database 10g新功能介紹(針對(duì)DBA和開發(fā)人員)	1.1  安裝改進(jìn)	1.2  SYSAUX表空間	1.3  自動(dòng)存儲(chǔ)管理	1.4  集群就緒服務(wù)(CRS)	1.5  服務(wù)器生成的警報(bào)	1.6  自動(dòng)工作量倉(cāng)庫(kù)(AWR)	1.7  自動(dòng)數(shù)據(jù)庫(kù)診斷監(jiān)控程序(ADDM)	1.8  SQL調(diào)整顧問	1.9  自動(dòng)共享內(nèi)存管理(ASMM)	1.10  閃回恢復(fù)區(qū)	1.11  回收站	1.12  恢復(fù)管理器的改動(dòng)	1.13  透明數(shù)據(jù)加密(10gR2)	1.14  LogMiner的改動(dòng)	1.15  新的DBMS_STATS選項(xiàng)	1.16  跟蹤增強(qiáng)	1.17  DBMS_SCHEDULER	1.18  默認(rèn)的(永久)表空間	1.19  臨時(shí)表空間組	1.20  重命名表空間	1.21  大文件表空間	1.22  收縮段	1.23  數(shù)據(jù)泵(Data Pump)	1.24  跨平臺(tái)的可移植表空間	1.25  寫入外部表	1.26  自動(dòng)撤消保留調(diào)整	1.27  包括新信息的V$SESSION	1.28  OEM的改動(dòng)	1.29  網(wǎng)格控制	1.30  10g版本中的新后臺(tái)進(jìn)程	1.31  版本比較表	1.32  新特性回顧	1.33  參考文檔	第2章  基本的索引原理(針對(duì)DBA和初級(jí)開發(fā)人員)	2.1  基本的索引概念	2.2  組合索引	2.3  限制索引	2.3.1  使用不等于運(yùn)算符(、!=)	2.3.2  使用 IS NULL或IS NOT NULL	2.3.3  使用函數(shù)	2.3.4  比較不匹配的數(shù)據(jù)類型	2.4  選擇性	2.5  集群因子(Clustering Factor)	2.6  二元高度(binary height)	2.7  使用直方圖	2.8  快速全局掃描	2.9  跳躍式掃描	2.10  索引的類型	2.10.1  B樹索引	2.10.2  位圖索引	2.10.3  HASH索引	2.10.4  索引組織表	2.10.5  反轉(zhuǎn)鍵索引	2.10.6  基于函數(shù)的索引	2.10.7  分區(qū)索引	2.10.8  位圖連接索引	2.11  快速重建索引	2.12  技巧回顧	2.13  參考文檔	第3章  磁盤實(shí)現(xiàn)方法和ASM(針對(duì)DBA)	3.1  成為規(guī)范的磁盤陣列	3.1.1  使用磁盤陣列改進(jìn)性能和可用性	3.1.2  所需的磁盤數(shù)量	3.1.3  可用的RAID級(jí)別	3.1.4  更新的RAID 5	3.2  安裝和維護(hù)傳統(tǒng)文件系統(tǒng)	3.3  在硬件磁盤之間分布關(guān)鍵數(shù)據(jù)文件	3.3.1  分開存儲(chǔ)數(shù)據(jù)和索引文件	3.3.2  避免I/O磁盤爭(zhēng)用	3.3.3  通過移動(dòng)數(shù)據(jù)文件來均衡文件I/O	3.4  本地托管的表空間	3.4.1  創(chuàng)建本地托管的表空間	3.4.2  把字典托管的表空間遷移到本地托管的表空間	3.4.3  Oracle大文件表空間	3.4.4  Oracle托管文件	3.5  ASM簡(jiǎn)介	3.5.1  I/O角色之間的通信	3.5.2  ASM實(shí)例	3.5.3  ASM init.ora參數(shù)	3.5.4  ASM的安裝	3.5.5  ASM參數(shù)和SGA調(diào)整	3.5.6  ASM和權(quán)限	3.5.7  ASM磁盤	3.5.8  ASM和多路徑	3.5.9  ASM磁盤組	3.5.10  ASM磁盤組和數(shù)據(jù)庫(kù)	3.5.11  ASM冗余和故障組	3.5.12  Oracle Database 10g Release 2中新的空間相關(guān)列	3.5.13  集群同步服務(wù)	3.5.14  數(shù)據(jù)庫(kù)實(shí)例和ASM	3.5.15  使用ASM進(jìn)行數(shù)據(jù)庫(kù)合并和集群化	3.5.16  支持ASM的數(shù)據(jù)庫(kù)進(jìn)程	3.5.17  大文件和ASM	3.5.18  支持ASM的數(shù)據(jù)庫(kù)init.ora參數(shù)	3.5.19  ASM和數(shù)據(jù)庫(kù)部署最佳實(shí)踐	3.5.20  ASM存儲(chǔ)管理和分配	3.5.21  ASM重新平衡和重新分布	3.6  使用分區(qū)來避免磁盤爭(zhēng)用	3.6.1  獲得關(guān)于分區(qū)的更多信息	3.6.2  其他類型的分區(qū)	3.6.3  其他分區(qū)選項(xiàng)	3.7  使用索引分區(qū)	3.8  導(dǎo)出分區(qū)	3.9  消除碎片	3.9.1  使用正確的盤區(qū)大小	3.9.2  創(chuàng)建一個(gè)新表空間并把數(shù)據(jù)移到其中	3.9.3  導(dǎo)出和重新導(dǎo)入表	3.9.4  正確設(shè)定比例以避免鏈化現(xiàn)象	3.9.5  自動(dòng)段空間管理	3.9.6  重建數(shù)據(jù)庫(kù)	3.10  增加日志文件尺寸和LOG_CHECKPOINT_INTERVAL以提高速度	3.10.1  確定重做日志文件的大小是否存在問題	3.10.2  確定日志文件的大小和檢查點(diǎn)的時(shí)間間隔	3.11  閃回恢復(fù)	3.12  增加恢復(fù)的可能性:在每次批處理后提交	3.13  使用回滾段	3.13.1  避免回滾段之間的爭(zhēng)用	3.13.2  監(jiān)控回滾段的等待和爭(zhēng)用	3.13.3  增加回滾段	3.13.4  把大的事務(wù)隔離到它們自己的回滾段上	3.13.5  更簡(jiǎn)便的方法:UNDO表空間	3.13.6  監(jiān)控UNDO空間	3.14  結(jié)束有問題的會(huì)話	3.15  不要在SYSTEM或SYSAUX表空間中執(zhí)行排序	3.16  在不同磁盤和控制器上存放多個(gè)控制文件	3.17  對(duì)寫操作頻繁的數(shù)據(jù)使用裸設(shè)備來提高I/O	3.17.1  使用裸設(shè)備的好處	3.17.2  使用裸設(shè)備的缺點(diǎn)	3.18  磁盤I/O的其他注意事項(xiàng)和提示	3.19  設(shè)計(jì)階段需要注意的問題	3.20  技巧回顧	3.21  參考文檔	第4章  用初始參數(shù)調(diào)整數(shù)據(jù)庫(kù)(針對(duì)DBA)	4.1  標(biāo)識(shí)重要的初始參數(shù)	4.2  不用重啟就修改初始參數(shù)	4.3  用Enterprise Manager查看初始參數(shù)	4.4  調(diào)整DB_CACHE_SIZE來提高性能	4.4.1  在調(diào)整DB_CACHE_SIZE時(shí)使用V$DB_CACHE_ADVICE	4.4.2  保證數(shù)據(jù)緩存命中率超過95%	4.4.3  監(jiān)控V$SQLAREA視圖以查找較慢的查詢	4.5  設(shè)定DB_BLOCK_SIZE來反映數(shù)據(jù)讀取量的大小	4.5.1  調(diào)整SHARED_POOL_SIZE以優(yōu)化性能	4.5.2  使用Oracle的多個(gè)緩沖池	4.5.3  調(diào)整PGA_AGGREGATE TARGET以優(yōu)化對(duì)內(nèi)存的應(yīng)用	4.5.4  修改SGA大小以避免分頁(yè)和交換	4.5.5  了解基于成本的優(yōu)化	4.5.6  創(chuàng)建足夠的調(diào)度程序	4.5.7  25個(gè)重要的初始化參數(shù)	4.5.8  查找未歸檔的初始參數(shù)	4.5.9  了解典型的服務(wù)器	4.5.10  典型的服務(wù)器模式	4.5.11  調(diào)整Oracle Application數(shù)據(jù)庫(kù)	4.6  技巧回顧	4.7  參考文檔	第5章  企業(yè)管理器和網(wǎng)格控制(針對(duì)DBA和開發(fā)人員)	5.1  企業(yè)管理器(EM)基礎(chǔ)	5.2  從All Targets和其他分組開始	5.3  Policies (Violations)選項(xiàng)卡	5.4  監(jiān)控?cái)?shù)據(jù)庫(kù)	5.4.1  Database Administration選項(xiàng)卡	5.4.2  Database Administration選項(xiàng)卡:Tablespace	5.4.3  Database Administration選項(xiàng)卡:實(shí)例級(jí)別	5.4.4  Database Administration選項(xiàng)卡:All Initialization Parameters	5.4.5  Database Administration選項(xiàng)卡:Manage Optimizer Statistics	5.4.6  Database Administration選項(xiàng)卡(實(shí)例級(jí)別):	5.4.7  Database Maintenance選項(xiàng)卡	5.4.8  Database Topology選項(xiàng)卡	5.4.9  Database Performance選項(xiàng)卡	5.5  監(jiān)控主機(jī)	5.6  監(jiān)控應(yīng)用服務(wù)器	5.7  監(jiān)控Web應(yīng)用程序	5.8  Deployments選項(xiàng)卡(補(bǔ)丁選項(xiàng))	5.9  Jobs選項(xiàng)卡	5.10  Reports選項(xiàng)卡	5.11  自動(dòng)存儲(chǔ)管理的性能	5.12  小結(jié)	5.13  技巧回顧	5.14  參考文檔	第6章  使用EXPLAIN和STOREDOUTLINES(針對(duì)DBA和開發(fā)人員)	6.1  Oracle的SQL TRACE實(shí)用程序	6.1.1  對(duì)簡(jiǎn)單查詢使用SQL TRACE的簡(jiǎn)單步驟	6.1.2  TRACE輸出部分	6.1.3  更復(fù)雜的TKPROF輸出	6.1.4  深入探討TKPROF輸出	6.1.5  使用DBMS_MONITOR(10g的新特性)	6.1.6  使用TRCSESS將多個(gè)跟蹤文件保存到一個(gè)文件中(10g的新特	6.1.7  單獨(dú)使用EXPLAINPLAN	6.1.8  EXPLAIN PLAN—— 從上至下讀取和從下至上讀取	6.1.9  閱讀EXPLAIN PLAN	6.1.10  使用DBMS_XPLAN	6.1.11  另一種EXPLAIN PLAN輸出方法:構(gòu)建樹結(jié)構(gòu)	6.1.12  另一個(gè)使用樹的例子	6.1.13  在開發(fā)產(chǎn)品中利用TRACE/EXPLAIN發(fā)現(xiàn)有問題的查詢	6.1.14  PLAN_TABLE表中的重要列	6.1.15  Oracle支持的一些有用的程序包	6.1.16  適用于未記錄入檔的TRACE操作的初始參數(shù)	6.1.17  使用存儲(chǔ)綱要	6.1.18  使用Plan Stability(存儲(chǔ)綱要)	6.2  技巧回顧	第7章  基本的提示語(yǔ)法(針對(duì)DBA和開發(fā)人員)	7.1  最常用的提示	7.1.1  謹(jǐn)慎使用提示	7.1.2  首先修正設(shè)計(jì)方案	7.2  可用的提示和分組	7.2.1  改變執(zhí)行路徑	7.2.2  使用訪問方法提示	7.2.3  使用查詢轉(zhuǎn)換提示	7.2.4  使用連接操作提示	7.2.5  使用并行執(zhí)行	7.2.6  其他提示	7.3  指定提示	7.4  指定多個(gè)提示	7.5  使用別名時(shí),提示別名而不是表名	7.6  使用提示	7.6.1  使用FIRST_ROWS提示	7.6.2  使用ALL_ROWS提示	7.6.3  使用FULL提示	7.6.4  使用INDEX提示	7.6.5  使用NO_INDEX提示	7.6.6  使用INDEX_JOIN提示	7.6.7  使用INDEX_COMBINE提示	7.6.8  使用INDEX_ASC提示	7.6.9  使用INDEX_DESC提示	7.6.10  使用INDEX_FFS提示	7.6.11  使用ORDERED提示	7.6.12  使用LEADING提示	7.6.13  使用NO_EXPAND提示	7.6.14  使用DRIVING_SITE提示	7.6.15  使用USE_MERGE提示	7.6.16  使用USE_NL提示	7.6.17  使用USE_HASH提示	7.6.18  使用PUSH_SUBQ提示	7.6.19  使用PARALLEL提示	7.6.20  使用NO_PARALLEL提示	7.6.21  使用APPEND提示	7.6.22  使用NOAPPEND提示	7.6.23  使用CACHE提示	7.6.24  使用NOCACHE提示	7.6.25  使用CLUSTER提示	7.6.26  使用HASH提示	7.6.27  使用CURSOR_SHARINGEXACT提示	7.6.28  使用QB_NAME提示	7.7  其他一些提示和注意事項(xiàng)	7.8  使用提示可能遇到的問題	7.9  提示一覽表	7.10  技巧回顧	7.11  參考文檔	第8章  調(diào)整查詢(針對(duì)開發(fā)人員和初級(jí)DBA)	8.1  調(diào)整哪些查詢?查詢V$SQLAREA	8.1.1  在V$SQLAREA視圖中選出最占用資源的查詢	8.1.2  在V$SQL視圖中選出最占用資源的查詢	8.2  選出最占用資源的會(huì)話和查詢的新10g視圖	8.2.1  從V$SESSMETRIC視圖中選出當(dāng)前最占用資源的會(huì)話	8.2.2  查看可用的AWR快照	8.2.3  從DBA_HIST_SQLSTAT視圖中選出最占用資源的查詢	8.2.4  從dba_hist_sqlstat視圖中選擇查詢文本	8.2.5  從DBA_HIST_SQL_PLAN視圖中選出查詢執(zhí)行計(jì)劃	8.3  確定何時(shí)使用索引	8.4  遺忘索引	8.5  創(chuàng)建索引	8.6  查看表上的索引	8.7  修正差的索引	8.8  在刪除索引時(shí)保持謹(jǐn)慎	8.9  對(duì)SELECT和WHERE中的列使用索引	8.10  使用快速全局掃描	8.11  使查詢魔術(shù)般加速	8.12  在內(nèi)存中緩存表	8.13  使用多個(gè)索引(利用最佳選擇性)	8.14  使用索引合并	8.15  處理受限制的索引	8.16  使用基于函數(shù)的索引	8.17  了解“古怪”的OR	8.18  使用EXISTS函數(shù)	8.19  表就是視圖	8.20  SQL和“大一統(tǒng)”理論	8.21  Oracle Database 10g中的調(diào)整修改	8.22  10g自動(dòng)SQL調(diào)整	8.22.1  保證調(diào)整用戶能訪問API	8.22.2  創(chuàng)建調(diào)整任務(wù)	8.22.3  查看顧問日志中的任務(wù)	8.22.4  執(zhí)行SQL調(diào)整任務(wù)	8.22.5  查看調(diào)整任務(wù)的狀態(tài)	8.22.6  顯示SQL調(diào)整顧問報(bào)告	8.22.7  檢查報(bào)告輸出	8.23  技巧回顧	8.24  參考文檔	第9章  表的連接和其他高級(jí)調(diào)整技術(shù)(針對(duì)DBA和開發(fā)人員)	9.1  連接方法	9.1.1  嵌套循環(huán)連接	9.1.2  排序合并連接	9.1.3  集群連接	9.1.4  散列連接	9.1.5  索引連接	9.2  表連接的初始化參數(shù)排序合并與散列連接參數(shù)	9.3  雙表連接:等尺寸表(基于成本)	9.4  雙表索引連接:等尺寸表(基于成本)	9.5  強(qiáng)制執(zhí)行特殊的連接方法	9.6  在多表連接中除去連接記錄(侯選行)	9.7  在大小不同的表間進(jìn)行雙表連接	9.8  三表連接(基于成本)	9.9  位圖連接索引	9.10  第三方性能調(diào)整工具	9.11  調(diào)整分布式查詢	9.12  一切就緒	9.13  各種調(diào)整技術(shù)摘要	9.13.1  外部表	9.13.2  數(shù)據(jù)快照太舊:開發(fā)人員的編程難題	9.13.3  設(shè)置事件以轉(zhuǎn)儲(chǔ)每次等待	9.13.4  使用EXISTS操作符有效縮短時(shí)間	9.14  在塊級(jí)別進(jìn)行調(diào)整	9.15  使用簡(jiǎn)單的數(shù)學(xué)方法調(diào)整性能	9.15.1  傳統(tǒng)的數(shù)學(xué)分析	9.15.2  方法論的七個(gè)步驟	9.15.3  模式分析	9.15.4  數(shù)學(xué)方法總結(jié)	9.16  連接調(diào)整:關(guān)系模型與對(duì)象關(guān)系模型的性能	9.16.1  使用的模型	9.16.2  結(jié)果	9.16.3  總結(jié)	9.17  技巧回顧	9.18  參考文檔	第10章  使用PL/SQL提高性能(針對(duì)DBA和開發(fā)人員)	10.1  使用DBMS_APPLICATIONINFO進(jìn)行實(shí)時(shí)監(jiān)控	10.2  在RAC環(huán)境中為實(shí)時(shí)監(jiān)控使用自定義包代替DBMSAPPLICATION_INFO10.3  在數(shù)據(jù)庫(kù)的表中記錄計(jì)時(shí)信息	10.4  減少PL/SQL程序的單元迭代和迭代的時(shí)間	10.5  使用ROWID進(jìn)行迭代處理	10.6  將數(shù)據(jù)類型、IF語(yǔ)句的排列和PLS_INTEGER	10.6.1  確保比較運(yùn)算中的數(shù)據(jù)類型相同	10.6.2  根據(jù)條件出現(xiàn)的頻率來排序IF條件	10.6.3  使用PLS_INTEGERPL/SQL數(shù)據(jù)類型進(jìn)行整數(shù)運(yùn)算	10.7  減少對(duì)SYSDATE的調(diào)用	10.8  減少M(fèi)OD函數(shù)的使用	10.9  共享池和固定PL/SQL對(duì)象	10.9.1  將PL/SQL對(duì)象語(yǔ)句固定(緩存)到內(nèi)存中	10.9.2  固定所有的包	10.10  標(biāo)識(shí)需要固定的PL/SQL對(duì)象	10.11  使用和修改DBMS_ SHAREDPOOL.SIZES	10.12  從DBA_OBJECT_SIZE 中獲取詳細(xì)的對(duì)象信息	10.13  發(fā)現(xiàn)無效的對(duì)象	10.14  發(fā)現(xiàn)已禁用的觸發(fā)器	10.15  將PL/SQL表用于快速參考表查詢	10.16  查找和調(diào)整所使用對(duì)象的SQL	10.17  在處理DATE數(shù)據(jù)類型時(shí)使用時(shí)間信息	10.18  調(diào)整和測(cè)試PL/SQL	10.19  了解PL/SQL對(duì)象定位的含義	10.20  使用回滾段打開大型游標(biāo)	10.21  使用數(shù)據(jù)庫(kù)的臨時(shí)表來提高性能	10.22  集成用戶跟蹤機(jī)制以定位執(zhí)行位置	10.23  限制動(dòng)態(tài)SQL的使用	10.24  使用管道表函數(shù)來建立復(fù)雜結(jié)果集	10.25  別管調(diào)試命令	10.26  為初學(xué)者提供的例子	10.26.1  創(chuàng)建PL/SQL代碼	10.26.2  創(chuàng)建過程	10.26.3  執(zhí)行PL/SQL過程	10.26.4  創(chuàng)建函數(shù)	10.26.5  在SQL中執(zhí)行GETCUST_NAME函數(shù)	10.26.6  創(chuàng)建數(shù)據(jù)包	10.26.7  在數(shù)據(jù)庫(kù)觸發(fā)器中使用PL/SQL	10.27  技巧回顧	10.28  參考文檔	第11章  調(diào)整RAC和使用并行特性	11.1  實(shí)時(shí)應(yīng)用集群(RAC)	11.1.1  并行數(shù)據(jù)庫(kù)	11.1.2  Oracle RAC的體系結(jié)構(gòu)	11.1.3  Oracle RAC系統(tǒng)的內(nèi)部工作方式	11.1.4  SCN 處理	11.1.5  RAC性能調(diào)整概述	11.1.6  RAC等待事件和互連統(tǒng)計(jì)數(shù)據(jù)	11.1.7  集群互連調(diào)整——硬件等級(jí)	11.1.8  使用企業(yè)管理器網(wǎng)格控制調(diào)整RAC	11.2  并行操作的基本概念	11.3  并行DML和DDL語(yǔ)句和操作	11.4  Oracle 9i的并行DML語(yǔ)句和操作	11.5  并行處理和分區(qū)	11.6  操作內(nèi)部和操作之間的并行處理	11.7  使用并行操作生成表和索引的示例	11.8  并行DML語(yǔ)句和示例	11.8.1  并行DML的約束條件	11.8.2  并行DML語(yǔ)句示例	11.9  通過V$視圖監(jiān)控并行操作	11.9.1  V$PQ_TQSTAT	11.9.2  V$PQ_SYSSTAT	11.9.3  V$PQ_SESSTAT	11.10  在并行操作時(shí)使用EXPLAIN PLAN和AUTOTRACE	11.11  調(diào)整并行執(zhí)行和Oracle 9i初始化參數(shù)	11.12  并行加載	11.13  性能比較和監(jiān)控并行操作	11.14  優(yōu)化RAC中的并行操作	11.14.1  并行操作的目標(biāo)	11.14.2  RAC并行使用模型	11.14.3  初始化參數(shù)	11.14.4  查看并行統(tǒng)計(jì)數(shù)據(jù)的V$視圖	11.14.5  并行配置和相關(guān)基線測(cè)試	11.14.6  并行查詢測(cè)試示例	11.14.7  Create Table As	11.14.8  索引構(gòu)建	11.14.9  性能考慮因素和小結(jié)	11.15  使用并行處理時(shí)的其他 注意事項(xiàng)	11.16  技巧回顧	11.17  參考文檔	第12章  V$視圖(針對(duì)開發(fā)人員和DBA)	12.1  V$視圖的創(chuàng)建和訪問	12.1.1  獲得所有V$視圖的數(shù)量和列表	12.1.2  查找用于創(chuàng)建V$視圖的X$表	12.1.3  查找組成DBA_視圖的底層對(duì)象	12.1.4  使用有幫助的V$腳本	12.1.5  內(nèi)存分配摘要(V$SGA)	12.1.6  內(nèi)存分配的細(xì)節(jié)(V$SGASTAT)	12.1.7  在V$PARAMETER中發(fā)現(xiàn)init.ora的設(shè)置	12.1.8  測(cè)定數(shù)據(jù)的命中率(V$SYSSTAT)	12.1.9  測(cè)定數(shù)據(jù)字典的命中率(V$ROWCACHE)	12.1.10  測(cè)定共享SQL和PL/SQL的命中率(V$LIBRARYCACHE)	12.1.11  確定需要固定的PL/SQL對(duì)象	12.1.12  通過V$SQLAREA查找有問題的查詢	12.1.13  檢查用戶的當(dāng)前操作及其使用的資源	12.1.14  查找用戶正在訪問的對(duì)象	12.1.15  使用索引	12.1.16  確定鎖定問題	12.1.17  關(guān)閉有問題的會(huì)話	12.1.18  查找使用多會(huì)話的用戶	12.1.19  查找磁盤I/O問題	12.1.20  查找回滾段的內(nèi)容	12.1.21  檢查空閑列表是否充足	12.1.22  檢查角色和權(quán)限設(shè)置	12.1.23  等待事件V$視圖	12.1.24  一些主要的V$視圖種類	12.2  技巧回顧	12.3  參考文檔	第13章  X$表(針對(duì)高級(jí)DBA)	13.1  X$表介紹	13.1.1  有關(guān)X$表的誤解	13.1.2  授權(quán)查看X$表	13.2  創(chuàng)建V$視圖和X$表	13.3  獲得所有X$表的列表	13.4  獲得所有的X$索引列表	13.5  對(duì)X$表和索引使用提示	13.6  共享池	13.7  監(jiān)控共享池的查詢	13.7.1  ORA-04031錯(cuò)誤	13.7.2  空間分配過大而引起的爭(zhēng)用	13.7.3  共享池碎片化	13.7.4  共享池和/或Java池中閑內(nèi)存過低	13.7.5  庫(kù)緩存命中率	13.7.6  大量的硬分析	13.7.7  閂鎖等待和/或休眠	13.7.8  其他調(diào)整選項(xiàng)	13.8  重做	13.9  初始化參數(shù)	13.10  緩存/數(shù)據(jù)塊	13.10.1  緩存狀態(tài)	13.10.2  占用數(shù)據(jù)塊緩存的段	13.10.3  熱數(shù)據(jù)塊/閂鎖爭(zhēng)用和等待事件	13.11  實(shí)例/數(shù)據(jù)庫(kù)	13.12  高效使用X$表及其策略	13.13  相關(guān)的Oracle內(nèi)部機(jī)制	13.13.1  跟蹤	13.13.2  DBMS_TRACE包	13.13.3  事件	13.13.4  轉(zhuǎn)儲(chǔ)	13.13.5  ORADEBUG	13.13.6  trcsess工具	13.14  閱讀跟蹤文件	13.14.1  等待信息和響應(yīng)時(shí)間	13.14.2  遞歸調(diào)用	13.14.3  模塊信息	13.14.4  提交	13.14.5  Unmap	13.14.6  綁定變量	13.14.7  錯(cuò)誤	13.15  X$表的分組	13.16  X$表及相關(guān)的非V$固定視圖	13.17  常見的X$表連接	13.17.1  Oracle 10gR1中新增的X$表	13.17.2  Oracle 10gR2中新增的X$表	13.18  X$表的命名約定	13.19  技巧回顧	13.20  參考文檔	第14章  使用STATSPACK和AWR報(bào)表調(diào)整等待和閂鎖	14.1  10gR2 (10.2) STATSPACK的 新特性	14.2  10gR1 (10.1) STATSPACK的新特性	14.3  安裝STATSPACK	14.3.1  PERFSTAT賬戶的安全管理	14.3.2  安裝之后	14.3.3  搜集統(tǒng)計(jì)數(shù)據(jù)	14.3.4  運(yùn)行統(tǒng)計(jì)數(shù)據(jù)報(bào)表	14.4  自動(dòng)工作量倉(cāng)庫(kù)(AWR)和AWR報(bào)表	14.4.1  手動(dòng)管理AWR	14.4.2  AWR自動(dòng)快照	14.4.3  AWR快照?qǐng)?bào)表	14.4.4  在Oracle企業(yè)管理器網(wǎng)格控制中運(yùn)行AWR報(bào)表	14.5  解釋STATSPACK的輸出結(jié)果	14.5.1  報(bào)表頭信息	14.5.2  負(fù)載簡(jiǎn)檔	14.5.3  實(shí)例的效率	14.5.4  首要等待事件	14.5.5  Oracle Bugs	14.5.6  Oracle影子進(jìn)程的生命周期	14.5.7  RAC等待事件和互連統(tǒng)計(jì)數(shù)據(jù)	14.5.8  首要的SQL語(yǔ)句	14.5.9  實(shí)例活動(dòng)統(tǒng)計(jì)數(shù)據(jù)	14.5.10  表空間和文件I/O的統(tǒng)計(jì)數(shù)據(jù)	14.5.11  段統(tǒng)計(jì)數(shù)據(jù)	14.5.12  其他的內(nèi)存統(tǒng)計(jì)數(shù)據(jù)	14.5.13  撤消統(tǒng)計(jì)數(shù)據(jù)	14.5.14  閂鎖統(tǒng)計(jì)數(shù)據(jù)	14.5.15  在塊級(jí)別調(diào)整和查看(高級(jí))	14.5.16  數(shù)據(jù)字典和庫(kù)緩存的統(tǒng)計(jì)數(shù)據(jù)	14.5.17  SGA內(nèi)存統(tǒng)計(jì)數(shù)據(jù)	14.5.18  非默認(rèn)的初始化參數(shù)	14.6  AWR報(bào)表和STATSPACK輸出結(jié)果中需	14.6.1  管理STATSPACK數(shù)據(jù)	14.6.2  升級(jí)STATSPACK	14.6.3  刪除STATSPACK	14.7  新ADDM報(bào)表的快速注釋	14.8  10gR2腳本	14.9  技巧回顧	14.10  參考文檔	第15章  執(zhí)行快速系統(tǒng)檢查 (針對(duì)DBA)	15.1  總體性能指數(shù)(TPI)	15.2  教育性能指數(shù)(EPI)	15.3  系統(tǒng)性能指數(shù)(SPI)	15.4  內(nèi)存性能指數(shù)(MPI)	15.4.1  緩沖區(qū)命中率	15.4.2  數(shù)據(jù)字典緩存命中率	15.4.3  庫(kù)緩存命中率	15.4.4  PGA內(nèi)存排序命中率	15.4.5  空閑的數(shù)據(jù)緩沖區(qū)的比例	15.4.6  最浪費(fèi)內(nèi)存的前10個(gè)語(yǔ)句占所有語(yǔ)句的比例	15.4.7  調(diào)整前25個(gè)最浪費(fèi)內(nèi)存的語(yǔ)句	15.4.8  固定/緩存對(duì)象	15.5  磁盤性能指數(shù)(DPI)	15.5.1  調(diào)整濫用磁盤讀操作的25個(gè)主要語(yǔ)句	15.5.2  最浪費(fèi)磁盤讀操作的前10個(gè)語(yǔ)句占所有語(yǔ)句的比例	15.5.3  表/索引的分離	15.5.4  關(guān)鍵任務(wù)表管理	15.5.5  分離關(guān)鍵的Oracle文件	15.5.6  自動(dòng)撤消管理	15.5.7  臨時(shí)段的平衡	15.6  總體性能指數(shù)(TPI)	15.7  系統(tǒng)綜合檢查的示例	15.7.1  評(píng)級(jí)系統(tǒng)	15.7.2  系統(tǒng)檢查評(píng)級(jí)分類的示例	15.7.3  需要立刻解決的問題項(xiàng)	15.7.4  其他需要解決的問題項(xiàng)	15.8  系統(tǒng)信息列表	15.8.1  與內(nèi)存有關(guān)的值	15.8.2  與磁盤有關(guān)的值	15.8.3  與CPU有關(guān)的值	15.8.4  與備份和恢復(fù)有關(guān)的信息	15.8.5  命名約定和/或標(biāo)準(zhǔn)以及安全信息	15.8.6  DBA知識(shí)評(píng)級(jí)	15.9  TPI和系統(tǒng)檢查需要考慮的其他項(xiàng)	15.10  技巧回顧	15.11  參考文檔	第16章  使用UNIX工具監(jiān)控系統(tǒng) (針對(duì)DBA)	16.1  Unix/Linux工具	16.2  使用sar命令監(jiān)控CPU的使用	16.2.1  sar -u (檢查CPU沉重程度)	16.2.2  sar -d命令(查找I/O問題)	16.2.3  sar -b命令(檢查緩存)	16.2.4  sar -q命令(檢查運(yùn)行隊(duì)列和交換隊(duì)列的長(zhǎng)度)	16.3  使用sar命令和vmstat命令監(jiān)控分頁(yè)/交換	16.3.1  使用sar命令的-p選項(xiàng)報(bào)告分頁(yè)活動(dòng)	16.3.2  使用sar命令的-w選項(xiàng)報(bào)告交換和切換活動(dòng)	16.3.3  使用sar命令的-r選項(xiàng)報(bào)告空閑內(nèi)存和空閑交換	16.3.4  使用sar命令的-g選項(xiàng)報(bào)告分頁(yè)活動(dòng)	16.3.5  使用sar命令的-wpgr選項(xiàng)	16.4  使用top命令發(fā)現(xiàn)系統(tǒng)中最影響性能的用戶	16.5  使用uptime命令監(jiān)控CPU的負(fù)載	16.6  使用mpstat命令確定CPU瓶頸	16.7  將ps命令與已選出的V$視圖相結(jié)合	16.8  使用iostat命令確定磁盤I/O瓶頸	16.8.1  為磁盤驅(qū)動(dòng)器sd15、sd16、sd17和sd18使用iostat的-d選項(xiàng)16.8.2  使用iostat的-D選項(xiàng)	16.8.3  使用iostat的-x選項(xiàng)	16.8.4  將iostat的-x選項(xiàng)與shell本中的邏輯相結(jié)合	16.9  使用ipcs命令確定共享內(nèi)存的使用情況	16.10  使用vmstat命令監(jiān)控系統(tǒng)的負(fù)載	16.11  監(jiān)控磁盤空閑空間	16.12  監(jiān)控網(wǎng)絡(luò)性能	16.12.1  使用spray命令監(jiān)控	16.12.2  使用nfsstat -c監(jiān)控網(wǎng)絡(luò)性能	16.12.3  使用netstat監(jiān)控網(wǎng)絡(luò)性能	16.12.4  顯示可調(diào)整參數(shù)的當(dāng)前值	16.12.5  修改配置信息文件	16.12.6  影響性能的其他因素	16.13  技巧回顧	16.14  參考文檔	附錄A  主要的初始化參數(shù)(針對(duì)DBA)	A.1  不再支持的初始化參數(shù)	A.2  不建議使用的初始化參數(shù)	A.3  25個(gè)最重要的初始化參數(shù)	A.4  必須記住的最重要的10個(gè)初始化參數(shù)	A.5  最重要的13個(gè)未入檔的初始化參數(shù)	A.6  已入檔的初始化參數(shù)列表(V$PARAMETER)	A.7  未入檔的初始化參數(shù)列表(x$ksppi/x$ksppcv)	A.8  Oracle應(yīng)用程序11i建議(注釋: 216205.1)	A.9  不寫書的10個(gè)重要原因	A.10  技巧回顧	A.11  參考文檔	附錄B  V$視圖(針對(duì)DBA和開發(fā)人員)	B.1  V$視圖、GV$視圖和X$表的創(chuàng)建	B.2  Oracle 10g (10.2.0.1) GV$和V$視圖列表	B.3  Oracle 10g (10.2.0.1) V$視圖	B.4  用于創(chuàng)建V$視圖的X$表的Oracle 10g腳本	附錄C  X$表(針對(duì)DBA) 	C.1  按名稱排序的Oracle10g X$表	C.2  Oracle 10g X$索引	C.3  交叉引用X$表的Oracle 10gV$視圖	C.4  GV$視圖沒有引用的Oracle 10g X$表

章節(jié)摘錄

插圖:第1章 Oracle Database 10g新功能介紹(針對(duì)DBA和開發(fā)人員)1.1 安裝改進(jìn)對(duì)于10g版本,首先您將會(huì)注意到其較小的磁盤占用空間和更為簡(jiǎn)單的安裝。數(shù)據(jù)庫(kù)通過一張CD提供給用戶,而一些組件,例如HTTP服務(wù)器和HTML DB(Application Express或最新版一中的APEX),則通過一張附帶的CD提供給用戶。

媒體關(guān)注與評(píng)論

“Rich再次完成了一本優(yōu)秀的書籍,書中以大膽的、鼓舞他人的方式教導(dǎo)不同層次的讀者?!薄  狝ri Kaplan,獨(dú)立Oracle用戶組的總裁“Rich Niemiec是Oracle性能調(diào)整方面的“絕對(duì)”專家。每個(gè)Oracle DBA的書架上都應(yīng)該放有本書——任何人都可以從中學(xué)到知識(shí)。這是一本被反復(fù)證明過有重要參考價(jià)值的優(yōu)秀書籍?!薄  狵imberIy Floss,PepsiCo的數(shù)據(jù)庫(kù)服務(wù)經(jīng)理,獨(dú)立Oracle用戶組的前任總裁“Rich是一名世界頂尖的Oracle優(yōu)化專家。他的書籍為所有優(yōu)化從業(yè)人員(從初級(jí)到高級(jí))提供了大量提示和技巧;本書將使Oracle世界的每位優(yōu)化從業(yè)人員的技能得到提升?!薄  狹ohammed Abdul Samad,沙特阿拉伯教育部“我非常欽佩Rich在0racle技術(shù)方面的豐富知識(shí)。希望熟練掌握Oracle性能調(diào)整的任何人都可以從本書中獲益。本書包含了Rich在Oracle方面的專家知識(shí)和經(jīng)驗(yàn),并且是所有Oracle專業(yè)人士必讀的書籍?!薄  狧ardik Bhatt,芝加哥城首席信息官“Rich Niemiec編寫的任何書籍都是必須購(gòu)買的書籍,他深入了解Oracle的方方面面。”  ——Karen Brownfield,Oracle Applications用戶組董事

編輯推薦

通過學(xué)習(xí)《Oracle Database 10g 性能調(diào)整與優(yōu)化》,讀者可以了解到如何選擇最優(yōu)化的索引選項(xiàng),有效地管理驅(qū)動(dòng)器和磁盤陣列,對(duì)查詢執(zhí)行故障檢修,以及可靠地預(yù)測(cè)將來的性能?!禣racle Database 10g 性能調(diào)整與優(yōu)化》也將詳細(xì)介紹PL/SQL性能增強(qiáng)、初始化文件調(diào)整,以及最新的數(shù)據(jù)庫(kù)調(diào)查和報(bào)告實(shí)用程序。

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    Oracle Database 10g性能調(diào)整與優(yōu)化 PDF格式下載


用戶評(píng)論 (總計(jì)22條)

 
 

  •   對(duì)于DBA入門, 相當(dāng)不錯(cuò), 由淺入深, 循序漸進(jìn)
  •   全書涉及到Oracle調(diào)整的許多技巧,對(duì)于初學(xué)者來說,需要耐心看。大部分內(nèi)容都不是特別難懂,當(dāng)然也有難理解的地方??偟膩?,是挺不錯(cuò)的一本書。
  •   仔細(xì)閱讀后,能讓你對(duì)oracle的底層的東西有更深入的理解。
  •   書的質(zhì)量很好。內(nèi)容也很全面,最好配合別的書來看。但看這一本我是感覺有點(diǎn)吃力,不太好理解。
  •   很不錯(cuò),優(yōu)化技巧很多,很實(shí)用。對(duì)原理的解釋也很到位,比國(guó)內(nèi)很多垃圾書要好太多了!
  •   看了下,內(nèi)容蠻不錯(cuò)的,可以對(duì)oracle有更深層次的了解
  •   很不錯(cuò)的學(xué)習(xí)資料,對(duì)優(yōu)化有幫助
  •   中規(guī)中矩,適合當(dāng)教材使用。對(duì)不論是初學(xué)者或中高級(jí)使用者都有很大幫助。
  •   實(shí)踐中積累的優(yōu)化經(jīng)驗(yàn),在經(jīng)過這本書的總結(jié)指引下,我的優(yōu)化能力得到系統(tǒng)的提升。
  •   這書真的是太暢銷了,2次進(jìn)貨才排到給我發(fā)貨,總算入手了,很高興啊.
  •   知識(shí)很豐富的,很不錯(cuò)呀!
  •   發(fā)貨慢,包裝差,書角都磨壞了
  •   這本書缺頁(yè)很嚴(yán)重,第八章缺了15頁(yè)左右,第九章缺了2頁(yè),后面的還沒看呢,不知道有沒有缺頁(yè)的了,書的質(zhì)量也太差了。
  •   書本質(zhì)量很好,內(nèi)容很全面
  •   外文技術(shù)書的翻譯始終是個(gè)問題,這本書寫的很好,內(nèi)容很NB,該基礎(chǔ)的地方也講的比較基礎(chǔ),就是翻譯,英語(yǔ)長(zhǎng)句子翻譯的不好,一句話看半天偶爾才能看懂。假如你要找性能優(yōu)化方面的書,也就那么三四本,這本絕對(duì)是值得一看的。
  •   裝幀優(yōu)良內(nèi)容廣泛,講解精到
  •   好書啊!內(nèi)容不錯(cuò)
  •   b0bqn31f5d54t0
  •   買了用來自學(xué)的
  •   正版書,很早就想要了!
  •   很好,需要好好研究
  •   性能調(diào)整與優(yōu)化
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7