午夜伦理在线-午夜伦理在线观看-午夜毛片免费看-午夜美女久久久久爽久久-午夜免费


曙海教育集團(tuán)論壇開(kāi)發(fā)語(yǔ)言培訓(xùn)專區(qū)Oracle數(shù)據(jù)庫(kù) → oracle高可靠性的一些討論和想法


  共有7446人關(guān)注過(guò)本帖樹(shù)形打印

主題:oracle高可靠性的一些討論和想法

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
oracle高可靠性的一些討論和想法  發(fā)帖心情 Post By:2010-12-11 10:46:58

有關(guān)oracle高可靠性的一些討論和想法
http://skyhorse.blogbus.com/logs/2004/03/106569.html
有關(guān)RAC的工作日志:
12月16日到12月23日做RAC的試驗(yàn)。12月24日把服務(wù)器交給QYC做DataGuard.
QYC做完DataGuard試驗(yàn)之后,1月4日我重新開(kāi)始做RAC的試驗(yàn)。
當(dāng)初說(shuō)是要做XX集團(tuán)的雙機(jī)熱備,因?yàn)槲覒?yīng)用oracle的時(shí)間非常短,對(duì)oracle并不熟悉,所以我這段時(shí)間就搜集了
一些相關(guān)的信息和資料,以供大家參考。
XX集團(tuán)的應(yīng)用我分析了一下,應(yīng)該是不要求24*7連續(xù)工作的,只要能夠及時(shí)恢復(fù)訪問(wèn)即可,而且數(shù)據(jù)量不是太大

而且我原來(lái)讓XX方面做了NAT, 我們?cè)谶@里就可以進(jìn)行遠(yuǎn)端的控制,控制到XX集團(tuán)內(nèi)部的Intranet的個(gè)別服務(wù)器。
我在網(wǎng)上所能搜到的信息是高可用性解決方案分為4種,
一種是oracle提供的被用方法,Standby (=9i DataGuard)
一種是AR (高級(jí)復(fù)制Advanced Replication,在以前版本叫快照snapshot)
一種是oracle 并行服務(wù)器8i的OPS (9i RAC,Real Application Cluster)
一種是第三方HA解決方案 (如Rose HA,故障切換時(shí)間是幾分鐘)
oracle公司的牛人著的里也是
把這4種方法做為高可用方案的組成。
這幾種方案從原理上來(lái)講都很容易理解,但是實(shí)際上有相當(dāng)多的細(xì)節(jié)和問(wèn)題。
另外還有一種是大家都不太熟悉的是oracle 的 failsafe。
failsafe 采用的是SHARE NOTHING結(jié)構(gòu),即采用若干臺(tái)服務(wù)器組成集群,共同連接到一個(gè)共享磁盤系統(tǒng),
在同一時(shí)刻,只有一臺(tái)服務(wù)器能夠訪問(wèn)共享磁盤,能夠?qū)ν馓峁┓⻊?wù).這與第3方HA方案的概念基本一樣。
但是 failsafe系統(tǒng)局限于WINDOWS(winnt,win2k...)平臺(tái),必須配合MSCS(microsoft cluster server).
我在網(wǎng)上找到現(xiàn)成的雙機(jī)熱備的文檔 就是講在 oracle8i上如何做standby. 其保證了始終有一臺(tái)備用的
數(shù)據(jù)庫(kù)能夠在很短時(shí)間內(nèi)通過(guò)人工,恢復(fù)正常的訪問(wèn),并保證數(shù)據(jù)一致。這是不要求24*7連續(xù)工作時(shí)所考慮的方
案。
我們所能做試驗(yàn)的就是前三種方案,因?yàn)槿耸钟邢蓿跃妥隽?i的DataGuard 和RAC 兩種方案的試驗(yàn)。
高級(jí)復(fù)制據(jù)說(shuō)lwd在很久以前做過(guò)。我打電話問(wèn)oracle公司,他說(shuō)AR對(duì)數(shù)據(jù)庫(kù)的性能影響太大。
高級(jí)復(fù)制也分為兩種情況
1.主動(dòng)/被動(dòng)策略: node1處于主動(dòng)模式,數(shù)據(jù)庫(kù)可讀寫,node2處于被動(dòng)模式,數(shù)據(jù)庫(kù)只讀。
2.主動(dòng)/主動(dòng)策略: node1和node2 都處于主動(dòng)模式,數(shù)據(jù)庫(kù)都可讀寫。這種對(duì)數(shù)據(jù)庫(kù)的性能影響特別大。
在講述DataGuard和RAC這兩種方案之前,我先補(bǔ)充一點(diǎn)關(guān)于oracle Client 如何能夠不修改本機(jī)配置就能
訪問(wèn)兩臺(tái)oracles數(shù)據(jù)庫(kù)的方法。
也就是修改本機(jī)的tnsname.ora
一個(gè)通常的tnsname.ora 如下:
RACDB =
(DESCRIPTION =
(LOAD_BALANCE = off)
(failover = on)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 211.68.29.61)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 211.68.29.62)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = racdb)
)
)
在 ADDRESS_LIST 中 寫了兩個(gè)地址,client 通過(guò)oracle net 在訪問(wèn)時(shí),如果訪問(wèn)不通第一個(gè)ip,就會(huì)訪問(wèn)第2個(gè)
ip.
這個(gè)特性是早就有了的。load_balance 特性也是有的。但是在兩臺(tái)數(shù)據(jù)庫(kù)內(nèi)容不一致的情況下是沒(méi)有任何意義的

不過(guò),在oracle9i 的官方pdf中,load_balance 特性是不推薦使用的。
RAC 的試驗(yàn)我昨天已經(jīng)做成了,雖然遇到了一些不大不小的Bug和不穩(wěn)定現(xiàn)象。
環(huán)境是oracle9.2.0.1.0 , 2* RedHatAdvanceServer 2.1 和一個(gè)磁盤陣列, 采用的是裸設(shè)備。
RAC 是share everything 模式,兩個(gè)數(shù)據(jù)庫(kù)實(shí)例同時(shí)共享同一套數(shù)據(jù)文件,控制文件,日志文件。
客戶端可以同時(shí)訪問(wèn)這兩臺(tái)數(shù)據(jù)庫(kù)得到的數(shù)據(jù)都是一致的,它的重點(diǎn)是高性能,可擴(kuò)展性。但是可靠性是不如Data
Guard的。
因?yàn)槭紫仍谖锢砩鲜沁B接在一起的,是沒(méi)法容災(zāi)的。
其次,instance1 死掉的話,可能可能影響instance2。
(Oracle 公司的電話支持說(shuō)的, 以及網(wǎng)上的論壇中有相關(guān)的例子,一個(gè)實(shí)例down機(jī)拖累另一臺(tái)不能正常工作,
我在做RAC試驗(yàn)的時(shí)候,也出現(xiàn)了node1 重起,造成node2也重起的個(gè)別現(xiàn)象)
當(dāng)然了,與單機(jī)的oracle相比,可用性肯定是高的。
另外網(wǎng)上我所能找得到的RAC成功案例(論壇oracle版主之類實(shí)施),無(wú)一例外都是oracle經(jīng)過(guò)認(rèn)證的服務(wù)器硬件和
軟件.
例如HP,DELL PowerEdge服務(wù)器。DELL/EMC fiber-channel storage array 等等。
另外,因?yàn)闆](méi)有多余交換機(jī),4塊網(wǎng)卡中的進(jìn)行內(nèi)部通信用的兩塊網(wǎng)卡我采用的是直接級(jí)聯(lián)
(新聚思公司的oracle支持說(shuō)這樣不穩(wěn)定,但是為什么不穩(wěn)定也沒(méi)有說(shuō)原因)
有關(guān)共享文件系統(tǒng)的一些問(wèn)題:
采用裸設(shè)備無(wú)法進(jìn)行日常管理,也沒(méi)有辦法進(jìn)行文件系統(tǒng)級(jí)的備份。
開(kāi)始我第一次在Mandrake8.1的時(shí)候,對(duì)陣列進(jìn)行分區(qū),而fdisk在linux下只能分16個(gè)分區(qū),我只好采用
lvm(logical volume manager,支持256個(gè))對(duì)裸設(shè)備進(jìn)行管理。后來(lái)在dbca創(chuàng)建數(shù)據(jù)庫(kù)的最后階段無(wú)法創(chuàng)建,只
好作罷。
第二次用RedHat AS2.1,oracle網(wǎng)站新推出了針對(duì)ocfs,我將其2003-1-3 更新的有關(guān)ocfs的所有rpm包(只適用
于AS2.1)安裝上,但是卻發(fā)現(xiàn)無(wú)法正常加載ocfs module, 我查了好久,估計(jì)這與我們所用的世紀(jì)曙光硬件有關(guān)

采用的AMD雙Athlon MP 1800+ 以及相關(guān)主機(jī)硬件,RedHat AS 2.1 無(wú)法正常認(rèn)出,從而造成ocfs modules也無(wú)法
正常加載,因?yàn)閛cfs modules與kernel是相關(guān)的。或許換成intel 的雙cpu, 或換成單cpu ,然后重裝系統(tǒng)就可以
解決。
因?yàn)閞hAS2.1的內(nèi)核不支持 lvm, 需要重新編譯內(nèi)核才能支持,我只好 將磁盤陣列分成2個(gè)drive,分別進(jìn)行了
分區(qū),跳過(guò)了fdisk分區(qū)數(shù)量限制,給oracle提供了足夠多的裸分區(qū)。
當(dāng)初做方案時(shí)買的vertris 的冷備份軟件(大概10萬(wàn)元)是只能在oracle停機(jī)時(shí)通過(guò)smb來(lái)copy 文件進(jìn)行備份到磁
帶里的。
而裸設(shè)備是沒(méi)有辦法copy 的。
客戶端在tnsname.ora配好address_list后,
當(dāng)nodeA 停機(jī)時(shí),是可以不用修改配置訪問(wèn)到nodeB 的。
但是這也分很多種情況
nodeA down,
listenerA down,
InstanceA down,
InstanceA in indeterminate state,
session die等等。
并非每種情況都能實(shí)現(xiàn)自動(dòng)轉(zhuǎn)到node2上。
第三方HA軟件是靠自己的agent軟件檢測(cè)模塊按照自己的故障判斷標(biāo)準(zhǔn)進(jìn)行強(qiáng)制轉(zhuǎn)換的。第一臺(tái)肯定不會(huì)被訪問(wèn)到

在幾分鐘之后所有的訪問(wèn)都會(huì)訪問(wèn)到第二臺(tái)剛剛起來(lái)的數(shù)據(jù)庫(kù)上。
oracle 要想實(shí)現(xiàn)與第三方HA軟件一樣的功能,只能與microsoft cluster server一起 在windows平臺(tái)
上實(shí)現(xiàn)failover.
除此之外,oracle本身的幾種High Available 方案是不提供與此類似的自動(dòng)failover功能的。
RAC提供并行;
standby/dataguard提供熱備份服務(wù)器(需要人工維護(hù)切換);
AR 可以基本實(shí)時(shí)提供兩臺(tái)數(shù)據(jù)一致的數(shù)據(jù)庫(kù),但是數(shù)據(jù)庫(kù)性能受影響。而且客戶端能否在各種各樣的情況下都自
動(dòng)
切換到第二臺(tái)數(shù)據(jù)庫(kù)上我也不知道。(例如listener running, instance down時(shí)無(wú)法切換到第二臺(tái))
主數(shù)據(jù)庫(kù)發(fā)生災(zāi)難,無(wú)法訪問(wèn)的情況下應(yīng)該是能夠切換的,但是有些情況下,只需要修改
tnsname.ora或者停掉node1的listener即可。
以前曾經(jīng)有人在職成網(wǎng)做過(guò) RoseHA+oracle817+Turbolinux的集成方案, 據(jù)說(shuō)效果也非常差。我所看到我們這里
的人去職成網(wǎng)
進(jìn)行維護(hù)N多次。(N非常大) 所以在集成方案中如果用到了oracle數(shù)據(jù)庫(kù),就準(zhǔn)備好有人長(zhǎng)期進(jìn)行維護(hù),主數(shù)據(jù)庫(kù)
在萬(wàn)一情況下發(fā)生災(zāi)難,只要有一臺(tái)熱的備用數(shù)據(jù)庫(kù)能夠在比較短(電話通知之后1天之內(nèi))的時(shí)間內(nèi)繼續(xù)投入使用
就達(dá)到了可用性的目的,不至于主數(shù)據(jù)庫(kù)損壞,重新進(jìn)行安裝恢復(fù)占用星期級(jí)的時(shí)間。
要想達(dá)到failover自動(dòng)切換,無(wú)需人的參予是一種理想化狀態(tài),在unix平臺(tái)上無(wú)法實(shí)現(xiàn),windows平臺(tái)上的oracle
failover
我不太清楚,應(yīng)該是能實(shí)現(xiàn)這個(gè)想法的。
standby備用數(shù)據(jù)庫(kù) 是在oracle7.x才開(kāi)始提供的一項(xiàng)功能,到了oracle8i才能提供read only模式,
到了9i 才使日志應(yīng)用等實(shí)現(xiàn)了自動(dòng)化,但是這個(gè)自動(dòng)化不是故障切換自動(dòng)化,而是只為了實(shí)現(xiàn)熱備份數(shù)據(jù)庫(kù)的功
能完善而
增加的一些自動(dòng)化。 歸根到底,oracle公司開(kāi)發(fā)這么久,還沒(méi)有開(kāi)發(fā)完善這些高可用方案,只是一直處于完善階
段。
RAC的并行提供服務(wù)我從一些oracle技術(shù)支持那里聽(tīng)來(lái)的說(shuō)法也是最好一臺(tái)用來(lái)做讀寫,另一臺(tái)專門提供只讀操作
的查詢,
不然仍然影響性能。用來(lái)做我們這種failover應(yīng)用的倒不多。
很容易理解的一些稍微復(fù)雜的原理,要想在實(shí)際中應(yīng)用是需要大量時(shí)間的,里面所涉及到的眾多細(xì)節(jié)如日志增量
等等很麻煩。
就連oracle9.0.0.1在linux下的OUI(oracle univesal installer)
安裝程序在它認(rèn)證的linux上運(yùn)行也是一堆Bug.
也就是它的jre有毛病,所以我當(dāng)初在mandrake8.1上創(chuàng)建數(shù)據(jù)庫(kù)出現(xiàn)了問(wèn)題,無(wú)法進(jìn)行下去。
特定的環(huán)境,特定的問(wèn)題,很多都是沒(méi)有解釋的。這是網(wǎng)上的一個(gè)DBA的原話。
網(wǎng)上也有oracle81700升級(jí)到81740就出故障的案例。

使用DataGuard(standby) 是不能實(shí)現(xiàn)故障的自動(dòng)切換的,因?yàn)閾?jù)oracle公司的人說(shuō)無(wú)從判斷究竟算什么樣的故障
才開(kāi)始進(jìn)行轉(zhuǎn)移,
這個(gè)已經(jīng)超出oracle軟件本身的范圍了。或許可以通過(guò)自己編寫程序來(lái)按照自己的標(biāo)準(zhǔn)來(lái)進(jìn)行判斷和轉(zhuǎn)移。
但是DataGuard做到了始終有一臺(tái)數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)保持一致。在加上客戶端的tnsname.ora的addresslist在一定
程度上
是可以實(shí)現(xiàn)部分的故障切換的。
備數(shù)據(jù)庫(kù)平時(shí)只能處于read only或 recovery manage 模式。
read only 不能應(yīng)用主數(shù)據(jù)庫(kù)傳來(lái)的重作日志,recovery manage 可以進(jìn)行數(shù)據(jù)恢復(fù),但是不能被客戶端訪問(wèn)。
備用數(shù)據(jù)庫(kù)經(jīng)常處于修復(fù)狀態(tài),因此不能被終端用戶使用,這從管理角度是一種浪費(fèi)(所以8i開(kāi)始提供了read
only模式)。
我的想法是
1. 主數(shù)據(jù)庫(kù)發(fā)生災(zāi)難,被迫關(guān)閉,XX方面打電話通知過(guò)來(lái),我們通過(guò)遠(yuǎn)程由人工激活備用的數(shù)據(jù)庫(kù)即可。也就是
敲幾行sql命令即可。
完全可以寫成腳本,隨便找一個(gè)人執(zhí)行一下即可。
2. 備數(shù)據(jù)庫(kù)白天處于read only 模式,可供webserver(也就是客戶端)查詢,晚上12點(diǎn)到1點(diǎn)通過(guò)cron
運(yùn)行在recover managed模式,
將白天主數(shù)據(jù)庫(kù)的更改應(yīng)用到備數(shù)據(jù)庫(kù)上。
3. 通過(guò)cron將備數(shù)據(jù)庫(kù)白天處于 primary 模式,可讀可寫,晚上通過(guò)腳本改回standby模式,并且應(yīng)用主數(shù)據(jù)庫(kù)
的更新。
這樣當(dāng)主數(shù)據(jù)庫(kù)down機(jī),客戶端會(huì)立刻連到第二臺(tái)數(shù)據(jù)庫(kù)上,同時(shí)也能夠進(jìn)行讀寫。數(shù)據(jù)分歧只有一天,并且達(dá)
到了無(wú)人
切換狀態(tài)。
這3種方法,第1種是最好的。
第2種是可行的,是oracle官方認(rèn)可的,有數(shù)據(jù)分歧,和只讀的局限性。
第3種有數(shù)據(jù)分歧并且有或大或小的細(xì)節(jié)問(wèn)題沒(méi)有考慮,只是我的一個(gè)臨時(shí)想法。
在RAC 和 DataGuard 這兩種方案中,
RAC對(duì)硬件和操作系統(tǒng)要求都比較高,維護(hù)也非常復(fù)雜,我們買的vertas 備份軟件也沒(méi)有辦法使用冷備的文件。
對(duì)人員的素質(zhì)要求也很高。
隨便舉個(gè)例子,RedHat AS 2.1 如果認(rèn)不出SCSI driver,就沒(méi)法做了。因?yàn)閛racle9.2i只能用這個(gè)操作系統(tǒng)。
( webmail沒(méi)有用mandrake8.1而是用mandrake8.2就是這個(gè)原因)
不確定因素太多。
在做系統(tǒng)集成方案和買硬件時(shí)都要仔細(xì)考慮,買什么樣的服務(wù)器,陣列,網(wǎng)卡,幾個(gè)交換機(jī),linuxAS21能否裝上
等等。
而不是隨便寫個(gè)雙機(jī)熱備,買兩個(gè)服務(wù)器,一個(gè)交換機(jī)就行了。
不過(guò)這個(gè)方案可以用在我們自己的機(jī)房里,提供高性能的oracle數(shù)據(jù)庫(kù)服務(wù)。(但是需要比較多的時(shí)間來(lái)準(zhǔn)備和調(diào)
試)。
我現(xiàn)在只能做到把oracle92i裝起來(lái),具體平時(shí)的管理還要靠有數(shù)據(jù)庫(kù)使用經(jīng)驗(yàn)的其他同事來(lái)做。
安裝文檔我放在附件里了。

支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

oracle高可靠性的一些討論和想法








簽名
主站蜘蛛池模板: 小明成人免费永久性看看 | 婷婷国产在线 | 欧美黄色免费在线观看 | 1024免费| 国产三级在线观看视频不卡 | 日本一级毛片毛片一级毛片 | 一级黄色免费 | 香蕉精品在线 | 亚洲日韩精品欧美一区二区一 | 99国产精品高清一区二区二区 | 日本中文字幕一区二区 | 91香蕉视频在线观看 | 涩色婷婷狠狠第四四房社区奇米 | 精品一区二区三区高清免费观看 | 天天影视欲香欲色成人网 | 777成了人乱视频 | 国产精品伦子一区二区三区 | 黄a级免费 | 亚洲无圣光一区二区 | 国产亚洲欧美在在线人成 | 永久免费不卡在线观看黄网站 | 亚洲免费视频网 | 亚洲国产美女精品久久久久 | 国产午夜不卡在线观看视频666 | 性大片免费观看yy | 在线麻豆视频 | 青青草国产三级精品三级 | 最新avtom永久地址免费 | 黄视频免费在线观看 | 国产大乳喷奶水在线看 | 欧美八区 | 特级欧美 | 欧美视频黑鬼大战白妞 | 国产精品你懂的在线播放 | 成人免费视频网站 | 深夜你懂的在线网址入口 | www成人免费观看网站 | 亚洲精品一级片 | 成人国产三级精品 | 久久综合狠狠综合久久综合88 | 久久九色综合九色99伊人 |