天天看點

你踩過dataguard的哪些坑?

話題

topic dataguard有什麼缺點?話題發起人@liangmao認為,dataguard的圖形界面讓人真不敢用,感覺很沒底,而且指令行對于一般的操作人員要求太高。那麼大家又是怎麼看的呢?(本期話題貢獻人:@liangmao)

衆說紛纭  

香草拿鐵:實體dg不能單建索引,也不能跨平台。

fzj111:我遇到了幾個問題:1、standby的arch檔案系統快到99%,不足以放下一個歸檔檔案,依舊會産生不完整的歸檔檔案,這個時候mrp就挂了。11203 psu5 rac的dg standby。

2、檢查效驗資料檔案居然會失敗,我還以為是壞塊,dbv資料檔案沒問題。【parknkjun@江政恒:這個情況我也遇到過,重新開機就可以了。】

3、磁盤被lock了,dg居然報壞塊。存儲驅動異常導緻磁盤lock很正常,dg卻報壞。無非就是磁盤無法寫和讀,mrp挂了,報壞塊,dbv資料檔案正常。【djs資料庫:我把dg庫的db_block_checking設定為full了,主庫也設定db_block_checking設定為full了。遇到歸檔日志有問題,mrp就會挂起。我這裡遇到幾次主庫是rac,dg庫有壞塊,必須全恢複情況(是底層光纖鍊路問題導緻),但是同樣環境,同樣鍊路問題,單機的dg庫沒有壞塊。】

4、備庫有個資料檔案比源庫小,然後mrp挂了,報錯有壞塊,當時我們用dbv去檢查,發現資料檔案都有問題,檢查歸檔無問題,從主庫cp那個資料檔案恢複啟動mrp就好了,這個問題應該是資料檔案頭壞了。

5、曾經有個問題叫“磁盤io抖動”。san-lan-vios- lpar,複雜的存儲架構,沒折的sa,emc還是hds的,存儲換塊盤,哥都要緊張。我們10 rac是hacmp的,存儲一搞,或者vios一搞,幾十套rac趴店。還有網絡交換機斷幾分鐘,100餘套rac要挂。我還測出11 g rac的磁盤心跳和網絡心跳分别出現問題的場景。rac三個心跳參數(mc、dto、reboottime,10g rac和11g rac這三個值的關系)到底怎麼整,我問過很多acs的人,他們讓我看mos的那個文章。我測試過10,11g rac,貌似mos不完全對。我測過11g rac,網絡心跳比磁盤心跳時間短,10g rac則相反。我可是斷過叢集網卡和磁盤,有一段時間就是研究rac的心跳的具體時間和危害。我對reboottime的意義不明白,可能就是說故障導緻心态丢失到一定時間就會出現重新開機,io隔離。

天道酬勤:我遇到了一個問題:adg有時延遲達到十幾分鐘,但奇怪的是standby負載并不高,而且無規律地偶發。primary端設定的參數直接指定sercive和db_unique-name,有standby 10gfi1e,主庫是rac備庫當機,軟體版本11.2.0.4。我現在裝了osw,下次再發生我準備開sr。【djs資料庫:adg上recover standby databse可以開并行,我用過parallel 32。遠距離adg,還要采用網絡加速,否則日志傳輸就慢。我們這裡跨1000公裡的遠端dg效果還可以。】

小馬:failover後不能回切。

周衛豐:不能跨版本,不能邏輯同步,有限支援跨平台。【楊建榮_北京:不能跨版本是資料庫版本,子版本可以相容,跨平台是作業系統平台,但作業系統版本可以相容,是這個意思吧?】版本有vesion release psu bundle ml intermediate,最多支援到psu級别,而且不推薦。

韓璐:搭配隻讀應用有限制。我們這裡的隻讀報表應用也是要記錄使用者登入、登出時間,及菜單操作軌迹的。dg純隻讀無法實作,so這種需求我們就用gg了。【周衛豐:12c可以在備庫建臨時表及序列,輔助報表分析。】這個還真不了解。不過這樣的話,需要修改應用程式代碼。我們的隻讀應用不用對應用代碼做任何修改,隻需在資料庫中删掉一些菜單配置項即可使用,然後修改應用使用者的權限為隻讀權限。

楊建榮_北京:說缺點必然和版本也有關系,我說個前段時間碰到的一個bug,害我一宿沒睡好。

在10.2.0.4前,主庫如果有drop datafile的操作,備庫的mrp起不來了, ora-00600: internal error code, arguments: [3689], [21], [], [], [], [], [], []

errors with log /u01/app/oracle/flash_recovery_area/stest4/archivelog/2015_09_11/o1_mf_1_7414_bz598mqc_.arc

mrp0: background media recovery terminated with error 600

文檔上bug 5623467 - corrupt redo from alter tablespace drop datafile (文檔 id 5623467.8)

10g的備庫不是active的,每次有大查詢都得開到read only,查完之後再應用日志,有一次開發忘了還是dba忘了,備庫一直read only,rfs接收歸檔但沒apply,dgmgrl檢視都正常,結果時間太長,接收的歸檔也給删了。估計adg也是促使dg大量使用的一個動力,原來客戶那邊用的是bcv,存儲快照複制弄的備庫。

小白:adg有個缺點,日志斷了就壞了,如果能線上增量,從主庫同步就好了,不走日志,直接增量資料。

周亮:主機平台要求大小位元組相同,偶見bug帶來的性能問題,偶見主備切換帶來的生産庫損壞,偶見logic corruption 帶來的備庫損壞,偶見日志斷檔問題需人為修複,極端環境下dg不适用(主備網絡環境差,備存儲io能力不足,生産庫歸檔量巨大)。

公先生:以後資料庫幹脆像iphone一樣,oem裡就一個home鈕,管啟動和關閉。

javid:缺點是不是國産解決方案,缺少社會主義元素。

鳴 謝

在“dba+社群”熱議話題讨論活動中,得到了以下聯合發起人以及群友們的積極參與和支援。在此,小編整理成文,并附上所有發表觀點的人員頭像彙總圖,特此鳴謝!

你踩過dataguard的哪些坑?

<b>本文來自雲栖社群合作夥伴"dbaplus",原文釋出時間:2015-10-10</b>