(轉)Oracle Rac 資料不同步解決方案
現在有這樣的環境:
一臺web Server,一個是純JAVA APP 程式
資料庫兩臺做成RAC的形式。 web Server與APP 程式都透過oci(rac)的方式連線
資料庫。
出了這樣的怪問題,webServer更新或是插圖入一條資料,後面緊跟著的在APP中就查詢不到,等到用工具查詢就沒有問題.
初步懷疑
1. RAC方式下面的資料庫兩個instance的同步沒做好?
查詢相關資料發現在與MAX_COMMIT_PROPAGATION_DELAY有關.
最大提交傳播時延(MAX_COMMIT_PROPAGATION_DELAY,簡稱MCPD),在ORACLE RAC(或OPS)環境中才使用,表示在RAC系統中,一個instance系統提交產生的最新系統改變碼(SCN),能夠以多快的速度反應到另一個instance中。
舉例說明,RAC系統,有A,B兩個例項(instance),A、B本地系統改變碼為SCN1,A更新資料DATA1提交, LGWR操作完成後,A本地系統改變碼為SCN2,經過不大於MAX_COMMIT_PROPAGATION_DELAY時間後,B系統本地改變碼才變為SCN2。
Global Cache Services 將重新整理RAC中的SCN。不管SCN是否及時重新整理,後續的資料查詢都不會因此產生資料庫錯誤。但,在此時間內,有可能查詢結果不是最新資料,產生讀一致性(read consistency)問題。
RAC環境中的所有例項,此引數值必須相同。
ORACLE8i後,建議常用的兩個值是0和700(預設),其他數值皆不建議。其實,這兩個數值就代表了RAC環境中,兩種SCN 產生機制:
Lamport Scheme和 Broadcast on Commit scheme。
設定為預設值700,表示採用Lamport Scheme,SCN改變不會完全同步,同步將在 7秒鐘內完成,而不是總等待7秒鐘後才完成。如果系統比較空閒,同步可能在0.5秒(甚至更短時間)內完成;不管系統多繁忙,同步時間也不可能超過7秒。不難理解,採用此模式,整個RAC系統的執行效率較高。
設定為0,表示採用Broadcast on Commit scheme,SCN改變完全同步。每當commit時(即LGWR 寫redo log時):
- LGWR傳送訊息更新全域性SCN(global SCN),
- LGWR 傳送訊息給每個活動的例項更新其本地SCN(local SCN)。
有資料說,只要MCPD < 700,系統將採用Broadcast on Commit scheme。
Lamport Scheme能夠適應絕大部分應用的要求,只有個別實時性特別高的業務,才需要Broadcast on Commit scheme。透過分析,不難理解,Broadcast on Commit scheme將需要更多的系統資源
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12272958/viewspace-676787/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle rac時間不同步Oracle
- Oracle資料不同步的問題分析和解決思路Oracle
- Oracle ASM故障資料恢復解決方案OracleASM資料恢復
- 兩臺SQL Server資料同步解決方案(轉)SQLServer
- 大資料解決方案大資料
- SQL Server和Oracle間的資料同步解決方案SQLServerOracle
- 【Oracle】11g RAC ORA-12545 解決方案Oracle
- 海量資料庫解決方案資料庫
- 解決方案丨資料治理實戰:滴滴資料資產管理產品解決方案
- Oracle資料庫字符集問題解決方案大全Oracle資料庫
- 資料庫容災、複製解決方案全分析(轉)資料庫
- Solr資料不同步Solr
- 雲資料庫安全解決方案資料庫
- 資料庫回檔解決方案資料庫
- 開源大資料解決方案大資料
- 大資料和資料倉儲解決方案大資料
- Oracle資料庫配置錯誤資訊解決方法(轉)Oracle資料庫
- Oracle RAC遷移至南大通用GBase 8c 解決方案Oracle
- 轉:Oracle RAC Failover 詳解OracleAI
- Oracle RAC & Data Guard搭建高可用資料庫系統方案Oracle資料庫
- 企業如何資料整合?資料整合解決方案
- ORACLE亂碼解決方案Oracle
- Oracle整體資料庫複製解決方案調查報告Oracle資料庫
- Spark 資料傾斜及其解決方案Spark
- Apache Hudi:雲資料湖解決方案Apache
- 實踐資料回滾解決方案
- 大資料解決方案-(基礎篇)大資料
- 公安大資料系統解決方案大資料
- iOS端資料庫解決方案分析iOS資料庫
- AzureStack混合雲大資料解決方案REST大資料
- 分庫解決方案—資料儲存
- Oracle資料庫基本知識及問題解決(轉)Oracle資料庫
- 【轉】Oracle 11gR2 RAC ORA-00845 解決方法Oracle
- char* 轉 LPCWSTR 解決方案
- Oracle RAC Failover 詳解[轉帖]OracleAI
- RAC資料庫心跳更換方案資料庫
- Aix下使用rman備份Oracle RAC資料庫(轉)AIOracle資料庫
- mysql主從不同步問題解決MySql