出版時(shí)間:2009-4 出版社:人民郵電 作者:張曉明 頁(yè)數(shù):473
Tag標(biāo)簽:無(wú)
前言
從2008年2月開(kāi)始動(dòng)筆到定稿出版,這本書(shū)的編寫(xiě)幾乎花費(fèi)了我10個(gè)月的時(shí)間,大大超出了最初3個(gè)月的計(jì)劃。這個(gè)過(guò)程雖然不能說(shuō)寢食難安,但其中的酸甜苦辣也是如人飲水,冷暖自知,如果一開(kāi)始就知道要投入這么大精力,我真懷疑自己是否有勇氣開(kāi)始動(dòng)筆?;仡欁约簩W(xué)習(xí)RAC的經(jīng)歷,我對(duì)它又愛(ài)又恨。因?yàn)閷?duì)技術(shù)本身的癡迷加上高“薪”技術(shù)的誘惑,所以愛(ài);因?yàn)闆](méi)有能力掌控,所以恨。時(shí)至今日,我仍然不敢說(shuō)自己已完全掌握了RAC,RAC的學(xué)習(xí)過(guò)程是對(duì)我所有學(xué)習(xí)過(guò)的IT技術(shù)的大復(fù)習(xí),包括OS、Network、Storage、Database等,甚至可能還有很多領(lǐng)域我從未涉足。相信很多對(duì)Oracle有一定經(jīng)驗(yàn)的DBA和我有同樣的感覺(jué),RAC比普通的Oracle更難入門(mén)。不僅因?yàn)楸缺冉允堑幕逎D深的術(shù)語(yǔ),也不僅因?yàn)樗采w的技術(shù)領(lǐng)域太廣,更主要的是可用的參考資料太少。我翻遍了所有能夠獲得的書(shū)籍資料,但是這些資料都是從很基本、很瑣碎的細(xì)節(jié)開(kāi)始,從下到上(BoRom.up)的學(xué)習(xí)方式是雖然看到了“樹(shù)”,但是看不到“林”。雖然無(wú)樹(shù)不成林,技術(shù)細(xì)節(jié)總是必要的,但過(guò)于瑣碎的分解給我造成更大的迷惑,到底R(shí)AC的總線(xiàn)是什么?GCS、GES、GRD、PCM這些東西是如何堆砌在一起的?這段痛苦經(jīng)歷促使我決定以自己的方式講述RAC的故事,如果大家能在這個(gè)旅程中豁然開(kāi)朗,對(duì)我而言將是一件很有趣又備感欣慰的事。
內(nèi)容概要
《大話(huà)Oracle RAC集群、高可用性、備份與恢復(fù)》以O(shè)racle 10g為基礎(chǔ),對(duì)Oracle RAC進(jìn)行了全面的介紹和分析。全書(shū)分為兩個(gè)部分,共14章,第一部分是集群理論篇,這部分從集群基礎(chǔ)知識(shí)入手,通過(guò)分析集群環(huán)境和單機(jī)環(huán)境的不同,介紹了集群環(huán)境的各個(gè)組件及其作用,以及集群環(huán)境的一些專(zhuān)有技術(shù),包括Oracle Clusterware、Oracle Database、ASM、Cache Fusion等。第二部分是實(shí)踐篇,每一章都針對(duì)RAC的一個(gè)知識(shí)點(diǎn)展開(kāi)講解,包括Oracle Clusterware的維護(hù)、HA與LB、備份、恢復(fù)、Flashback家族、RAC和Data Guard的結(jié)合使用、RAC和Stream的結(jié)合使用,最后對(duì)ASM進(jìn)行深入介紹,并給出性能調(diào)整的指導(dǎo)思想?! 洞笤?huà)Oracle RAC集群、高可用性、備份與恢復(fù)》按照“發(fā)現(xiàn)問(wèn)題→解決問(wèn)題→實(shí)踐與理論相結(jié)合”的方式進(jìn)行介紹,首先對(duì)現(xiàn)實(shí)問(wèn)題進(jìn)行分析,然后提供合適的解決方案,最后自然地引出Oracle中的理論知識(shí)點(diǎn),這種講解方法能夠有效地降低閱讀難度,幫助讀者更好地掌握相關(guān)技能。 《大話(huà)Oracle RAC集群、高可用性、備份與恢復(fù)》可以作為數(shù)據(jù)庫(kù)開(kāi)發(fā)人員、數(shù)據(jù)庫(kù)管理員、數(shù)據(jù)庫(kù)初學(xué)者及其他數(shù)據(jù)庫(kù)從業(yè)人員的工作參考手冊(cè),也可以作為大中專(zhuān)院校相關(guān)專(zhuān)業(yè)師生的參考用書(shū)和相關(guān)培訓(xùn)機(jī)構(gòu)的培訓(xùn)教材。
作者簡(jiǎn)介
張曉明,Oracle OGP,現(xiàn)用網(wǎng)名“石頭狗“,名稱(chēng)來(lái)自于《和佛陀賞花去》中的故事:狗會(huì)因?yàn)槿穗S手去出的一個(gè)東西茆而追逐,可能是一個(gè)骨頭,一塊肉,一個(gè)眼神。甚至是一個(gè)石頭。警示一定要看清自己在追逐的東西。上個(gè)世紀(jì)90年代末畢業(yè)于某著名的醫(yī)科大學(xué),畢業(yè)后分配到某著名醫(yī)院從事治病救人的神圣工作。不幸的是,在大學(xué)最后一年的實(shí)習(xí)中我接觸到了老式486,這讓我魂?duì)繅?mèng)系,再加上IT熱潮對(duì)一個(gè)熱血青年的巨大誘惑,我終于在行醫(yī)3年后削尖了腦袋擠進(jìn)了IT業(yè)?;叵氘?dāng)年,身邊有好幾位來(lái)自知名醫(yī)學(xué)院校的朋友和我一樣義無(wú)反顧地加入IT工程師隊(duì)伍,不知道這幾位朋友現(xiàn)在安否? 我在IT行業(yè)中最初是做開(kāi)發(fā),先后用過(guò)C、C++、Java等各種主流和非主流語(yǔ)言,熱火朝天的參與過(guò)。C++和Java的網(wǎng)土混戰(zhàn),現(xiàn)在回想起來(lái)只有一個(gè)詞評(píng)價(jià)“幼稚”,不僅是自己幼稚,整個(gè)行業(yè)也不太成熟。后轉(zhuǎn)從事數(shù)據(jù)庫(kù)開(kāi)發(fā),再轉(zhuǎn)為數(shù)據(jù)庫(kù)管理,最終將此定為自己的職業(yè)方向。今天,我把這些年來(lái)對(duì)Oracle數(shù)據(jù)庫(kù)的學(xué)習(xí)和使用心得記錄下來(lái),既是對(duì)自己的一個(gè)階段總結(jié),也是與所有志同道合的朋友們共同分享。 現(xiàn)任某SP公司數(shù)據(jù)庫(kù)團(tuán)隊(duì)負(fù)責(zé)人,負(fù)責(zé)管理全國(guó)20余省市的OLTP以及公司TB級(jí)OLAP系統(tǒng)的開(kāi)發(fā)、優(yōu)化和護(hù)。精通數(shù)據(jù)庫(kù)管理、備份、恢復(fù)、窖災(zāi)等設(shè)計(jì)和規(guī)劃,特別是高可用、高并發(fā)、高壓力數(shù)據(jù)庫(kù)環(huán)境的設(shè)計(jì)和優(yōu)化。
書(shū)籍目錄
第1部分 集群理論篇第1章 RAC初體驗(yàn)1.1 本書(shū)使用環(huán)境1.1.1 硬件環(huán)境1.1.2 軟件環(huán)境1.1.3 本書(shū)使用的環(huán)境1.2 如何在PC機(jī)上搭建RAC環(huán)境1.2.1 需要下載的軟件1.2.2 安裝過(guò)程1.3 任務(wù)列表1.4 規(guī)劃階段1.4.1 確認(rèn)主機(jī)名和3個(gè)IP地址1.4.2 存儲(chǔ)方案選型1.5 實(shí)施階段1.5.1 主機(jī)配置1.5.2 安裝OracleClusterware1.5.3 安裝OracleDatabase1.5.4 配置Listener1.5.5 創(chuàng)建ASM1.5.6 創(chuàng)建數(shù)據(jù)庫(kù)1.6 客戶(hù)端測(cè)試1.6.1 客戶(hù)端配置1.6.2 體驗(yàn)Failover1.6.3 體驗(yàn)LoadBalance1.6.4 修改歸檔模式第2章 什么是RAC集群2.1 集群分類(lèi)2.2 集群環(huán)境的特殊問(wèn)題2.2.1 并發(fā)控制2.2.2 健忘癥(Amnesia)2.2.3 腦裂(SplitBrain)2.2.4 IO隔離(IOFencing)2.3 RAC集群2.3.1 存儲(chǔ)層2.3.2 網(wǎng)絡(luò)層2.3.3 集群件層2.3.4 應(yīng)用層2.4 小結(jié)第3章 OracleClusterware3.1 Clusterware和RAC的關(guān)系3.2 OracleClusterware組成3.2.1 磁盤(pán)文件3.2.2 Clusterware后臺(tái)進(jìn)程3.2.3 網(wǎng)絡(luò)組件3.3 Clusterware的日志體系3.4 小結(jié)第4章 RAC原理4.1 數(shù)據(jù)庫(kù)基本原理4.1.1 并發(fā)訪(fǎng)問(wèn)和數(shù)據(jù)一致性4.1.2 事務(wù)和隔離級(jí)別4.1.3 Oracle支持的隔離級(jí)別4.2 Oracle單實(shí)例的并發(fā)控制機(jī)制4.2.1 Lock4.2.2 數(shù)據(jù)記錄的行級(jí)鎖4.2.3 Latch4.2.4 Latch和Lock對(duì)比4.2.5 進(jìn)一步理解4.3 RAC下的并發(fā)控制4.3.1 DLM中資源和鎖4.3.2 Non-CacheFusion資源4.3.3 CacheFusion資源4.3.4 GRD(GlobalResourceDirectory)4.3.5 PCMLock4.3.6 CacheFusion4.3.7 RAC并發(fā)控制總結(jié)4.4 RAC架構(gòu)4.4.1 SGA的變化4.4.2 后臺(tái)進(jìn)程的變化4.4.3 文件4.4.4 SCN4.4.5 CacheFusion、GCS、GES4.5 RAC和Clusterware的交互4.5.1 Clusterware層4.5.2 RAC層4.6 小結(jié)第5章 存儲(chǔ)方案——ASM初步5.1 Shared-Disk和Shared-Nothing架構(gòu)5.2 Oracle10gRAC的存儲(chǔ)方案介紹5.3 ASM架構(gòu)5.3.1 ASM實(shí)例5.3.2 文件5.4 配置ASM5.4.1 安裝位置5.4.2 創(chuàng)建ASM磁盤(pán)5.4.3 配置ASM實(shí)例5.4.4 創(chuàng)建磁盤(pán)組5.4.5 在數(shù)據(jù)庫(kù)中使用ASM的磁盤(pán)組5.5 ASM實(shí)例:將數(shù)據(jù)庫(kù)遷移到ASM5.5.1 試驗(yàn)說(shuō)明5.5.2 操作步驟5.5.3 最后驗(yàn)證5.6 小結(jié)第2部分 實(shí)戰(zhàn)篇第6章 RAC維護(hù)工具集6.1 OracleClusterware工具集6.2 節(jié)點(diǎn)層6.3 網(wǎng)絡(luò)層6.4 集群層6.4.1 crsctl6.4.2 OCR命令系列6.5 應(yīng)用層6.5.1 crs_stat6.5.2 onsctl6.5.3 srvctl6.5.4 恢復(fù)6.6 小結(jié)第7章 HA和LB7.1 什么是高可用性7.2 Failover7.2.1 Client-SideConnectTimeFailover7.2.2 TAF(TransparentApplicationFailover)7.2.3 Client-SideFailover和TAF的對(duì)照試驗(yàn)7.2.4 Server-SideTAF7.3 OracleClusterwareHA框架7.3.1 術(shù)語(yǔ)介紹7.3.2 配置命令7.3.3 完整實(shí)例7.4 LoadBalance7.4.1 ConnectionBalancing7.4.2 利用Service分散負(fù)載7.5 測(cè)試LoadBalance7.5.1 通過(guò)Listener日志區(qū)分路由來(lái)源7.5.2 測(cè)試方法7.5.3 測(cè)試過(guò)程7.6 小結(jié)第8章 備份8.1 概述8.1.1 備份8.1.2 恢復(fù)8.1.3 RMAN工具8.2 使用FlashRecoveryArea8.2.1 配置FlashRecoveryArea8.2.2 FlashRecoveryArea的空間監(jiān)控8.3 使用RMAN8.3.1 RMAN工具的使用方法8.3.2 RMAN配置8.4 完全備份和增量備份8.4.1 完全備份8.4.2 增量備份8.4.3 其他RMAN命令8.5 RAC的備份實(shí)例8.6 小結(jié)第9章 恢復(fù)9.1 為什么Oracle數(shù)據(jù)庫(kù)能夠恢復(fù)9.2 日志9.2.1 日志線(xiàn)程(RedoThread)9.2.2 RAC的聯(lián)機(jī)日志9.3 恢復(fù)種類(lèi)9.3.1 InstanceRecovery9.3.2 MediaRecovery9.3.3 CrashRecovery9.3.4 OnlineBlockRecovery9.4 介質(zhì)恢復(fù)9.4.1 完全恢復(fù)9.4.2 不完全恢復(fù)9.4.3 恢復(fù)到單實(shí)例9.5 小結(jié)第10章 其他恢復(fù)技術(shù)10.1 數(shù)據(jù)塊恢復(fù)10.2 如何檢查數(shù)據(jù)塊一致性10.2.1 使用初始化參數(shù)10.2.2 DBV工具10.2.3 Analyze命令10.2.4 RMAN工具10.2.5 dbms_repair包10.3 模擬數(shù)據(jù)塊不一致10.4 數(shù)據(jù)塊不一致處理辦法10.4.1 收集信息10.4.2 設(shè)計(jì)恢復(fù)方法10.4.3 恢復(fù)操作10.5 數(shù)據(jù)塊恢復(fù)實(shí)例10.6 Flashback家族介紹10.7 FlashbackDatabase10.7.1 FlashbackDatabase架構(gòu)10.7.2 啟用FlashbackDatabase10.7.3 FlashbackDatabase10.7.4 命令和視圖10.8 FlashbackDrop10.8.1 TablespaceRecycleBin10.8.2 FlashbackDrop操作10.8.3 RecyclyBin的維護(hù)10.9 FlashbackQuery和FlashbackTable10.9.1 Oracle9i的FlashbackQuery10.9.2 FlashbackVersionQuery10.9.3 FlashbackTransactionQuery10.9.4 FlashbackTable10.9.5 UNDORetntion10.10 小結(jié)第11章 RAC和DataGuard11.1 DataGuard介紹11.1.1 DataGuard架構(gòu)11.1.2 日志發(fā)送(RedoSend)11.1.3 日志接收(RedoReceive)11.1.4 日志應(yīng)用(RedoApply)11.1.5 數(shù)據(jù)保護(hù)模式11.1.6 自動(dòng)裂隙檢測(cè)和解決11.2 RAC和Standby配置實(shí)例11.2.1 RACPrimary和SingleStandby11.2.2 RACPrimary和RACStandby11.3 小結(jié)第12章 RAC和StreamReplication12.1 Stream的工作原理12.2 DataGuard和Stream對(duì)比12.3 RACStream配置實(shí)例12.3.1 Single(Source)和RAC(Target)12.3.2 RAC對(duì)RAC的復(fù)制12.3.3 STRMMON工具12.4 小結(jié)第13章 深入ASM13.1 非ASM的存儲(chǔ)結(jié)構(gòu)13.2 ASM存儲(chǔ)結(jié)構(gòu)13.3 ASM文件系統(tǒng)13.3.1 ASMMetadata13.3.2 PhysicalMetadata13.3.3 VirtualMetadata13.3.4 DiskRecovery13.4 條帶化(ASMStriping)13.4.1 ASM文件模板(ASMFileTemplate)13.4.2 ASM別名(ASMFileAlias)13.5 RDBMS和ASM之間的交互13.6 ASM的實(shí)例恢復(fù)13.7 ASM和OSFilesystem之間交互13.7.1 dbms_file_transfer包13.7.2 RMAN的CONVERT方法13.7.3 ASM和TTS13.8 ASM的限制13.9 小結(jié)第14章 性能與RAC14.1 RAC的若干特點(diǎn)14.2 AWR14.2.1 啟用AWR14.2.2 修改AWR配置14.2.3 產(chǎn)生AWR報(bào)告14.3 ASH14.4 SQL調(diào)整策略14.4.1 SQL語(yǔ)句的執(zhí)行過(guò)程14.4.2 SQL性能調(diào)整的基本方法14.4.3 PL/SQL和SQL14.5 小結(jié)
章節(jié)摘錄
插圖:第1部分 集群理論篇第1章 RAC初體驗(yàn) 長(zhǎng)期以來(lái),業(yè)界流行著這樣一個(gè)“潛規(guī)則”:以是否有RAC經(jīng)歷來(lái)衡量DBA水平。雖然這種評(píng)價(jià)方法并不準(zhǔn)確,但從某種程度上也反映了RAC在Oracle體系金字塔的塔尖地位。造成這種現(xiàn)象原因有很多,作為一種高端解決方案,RAC的實(shí)施成本一度也是很高的,除了硬件成本、OS License、Oracle License成本,還包括第三方的Clusterware軟件成本、人力成本,所以RAC案例一直集中在電信、銀行、制造等大企業(yè),中小企業(yè)鮮有問(wèn)津,絕大多數(shù)的DBA很難有機(jī)會(huì)接觸到這種環(huán)境。所以RAC的神秘很大程度上要?dú)w功于“高墻鎖深宮”,技術(shù)本身的因素反而是次要的。不過(guò)最近幾年,隨著芯片技術(shù)的發(fā)展,硬件成本逐年降低,物美價(jià)廉的PC Server越來(lái)越深入人心。而在軟件方面,Linux已經(jīng)不再是一款“教學(xué)”軟件,越來(lái)越多的企業(yè)已經(jīng)在核心業(yè)務(wù)上選擇Linux作為首選平臺(tái),Oracle尤其重視在Linux平臺(tái)上的應(yīng)用,它也是第一個(gè)支持Linux平臺(tái)的商業(yè)數(shù)據(jù)庫(kù)。從Oracle本身來(lái)說(shuō),隨著Oracle log版本的推出,Oracle開(kāi)始提供RAC的“一站式”解決方案,包括針對(duì)存儲(chǔ)的ASM、針對(duì)集群的OracleClusterware。并且這些軟件都可以從Oracle網(wǎng)站免費(fèi)下載。因此在Oracle lOg上部署RAC成本非常便宜——不需要昂貴的小型機(jī)和專(zhuān)有的操作系統(tǒng),普通的PC Server+Linux就足以勝任;不需要采購(gòu)第三方的集群軟件、存儲(chǔ)軟件、不需要三方的人力資源,只需要一個(gè)DBA就可以完全搞定。
編輯推薦
《大話(huà)Oracle RAC集群、高可用性、備份與恢復(fù)》由人民郵電出版社出版。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版