




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、DSGRealSync操作管理手冊2012/1/14DSGdataInc.1RealSync工作原理1.1 原理概論RealSync技術是針對數據庫提供了基于邏輯的交易復制方式。該方式通過直接捕獲源數據庫的交易,將數據庫的改變邏輯復制到目標系統數據庫中,實現源系統和目標系統數據的一致性。senderArchived log這些信息都將在 Redo Log中 獲得本次操作的交易指令和交 XF1數據格式,并實時通過網如上圖所示,RealSync在數據源(DataSource,簡稱DS)端和數據目標端(DataTarget端,簡稱DT)分別安裝Agent進程,Source端的Agent進程對ORAC
2、LE日志進行監控,發現改變及時對目標數據庫進行更新。當應用系統在DataSource端向數據庫進行任何操作時時,保存,RealSyncAgent通過對實時獲取的Log日志進行分析,易數據,然后將這些交易指令和交易數據經過格式轉化生成絡傳送到DataTarget系統。DataTarget系統的RealSyncAgent接收數據庫包,經過校驗碼檢查,確認正確的數據庫包后,調用Oracle函數按照交易的先后順序在DataTarget系統中執行該交易。1.2 日志抓取(DataCapture)RealSync對數據的抓取是通過安裝在DataSource端的Agent模塊定日分析OracleRedoLo
3、g來獲取DataSource端的交易類型及數據的。RealSyncAgent在判斷DataSource端的Oracle系統是否有新的交易產生時是通過定期檢查oracle提供的視圖中記錄的當前SCN號來判斷的,這樣避免每次檢都通過讀取log文件來判斷否有新的交易產生時造成的系統影響。在確認有新的交易產生時,可以同時獲得當前的RedoLog組,以及最新日志在日志文件的最新位置。RealSyncAgent模塊根據這些信息將上次抓取時記錄的日志位置與本次讀取的最新位置之間的Log讀取并加以分析。然后將這些數據保存在OnlineLogCache文件中,等待下一步作交易合成處理。system view時間
4、間隔T (可任意設置)Analyze ModuleOnline Log CacheRealSync的優勢:與其他類似日志復制產品相比,RealSync對日志進行分析,得到交易信息再進行傳送;而其他類似產品不對日志作分析,傳送全部日志,然后在目標端通過日志作Recover,這樣一來,不僅傳送數據量大,而且目標端數據庫不能打開。1.3 日志分析(Analyze)Oracle數據庫的所有更改都記錄在日志中,其中記錄了對數據庫中的每一個變化。當我們需要了解數據庫中所作的交易時,一個最有效實用而又低成本的方法就是分析Oracle數據庫的日志文件。RealSyncAgent中集成了DSG的優秀日志分析功能
5、,該功能完全不同于oracle提供的Logminer日志分析工具,在性能和功能上都大大提高,主要體現在系統性能的優化上,大幅度提高日志分析的速度,使得對于高并發業務系統的復制成為可能。按照RealSync的日志分析設計目標,每秒能夠分析的日志量達到10M/s。RealSync通過對日志的分析,得到該數據庫中的每個SQL指令,并將這些SQL指令生成XF1格式的表達方式。XF1格式是DSG公司的專有技術,該技術是DSG公司用來表達SQL指令的方式,該數據格式能夠通過DSG的專有轉換算法能夠直接轉換為ORACL的內部數據表達格式,從而在分析和轉載時需要最小的轉化,提高分析和裝載速度,減少資源占用、豐
6、富能夠表達的各種數據類型。1.4 交易合成(Synthesize)通過ORACLEREDOLOG分析的交易指令存在如下的幾個特點:(1)這些指令是交叉出現的,屬于一個交易(Transaction)的多條SQL指令是非連續存儲的,多個交易的SQL之間是相互穿插的;(2) Redolog中記錄了所有的commit的交易以及沒有commit的交易;所以,為了提高系統的可控制性、保證邏輯完整性、避免數據丟失,最好將復制的最小單位為一個交易(Transaction),而不是以單個SQL指令為復制單位,這樣在DataTarget端的交易裝載更加容易控制。同時,對于復制的數據而言,只有那些Commit的數據
7、對于DataTarget端系統是有意義的,而對于那些Rollback的數據無需復制到Datatarget系統上。所以RealSync在復制過程中不是復制每個SQL語句,而是對抓取的數據進行交易整合Online Log Cache后以交易(Transaction)為單位進行復制,同時只復制COMMIT的交易。T1/SQL1T2/SQL1T1/SQL2T1/SQL3T2/SQL2T1COMMITT3/SQL1T2COMMITT3Rollback如上圖所示,在OnlineLogCache文件中,包括Commit的交易,沒有Commit的交易和Rollback的交易。交易合成模塊首先按照交易序號對SO
8、L語句進行劃分,每個交易包含多條SOL語句。然后,以交易為單位進行處理,將已經Commit的交易,傳至傳輸處理模塊;將未提交的交易保存在本地,一旦通過日志得知保存的未提交交易已提交,立即將該交易發送到傳輸處理模塊;對Rollback的交易作丟棄處理。RealSync的優勢:RealSync是以交易為單位進行傳輸的,而不是以SOL語句為單位進行傳輸的,更容易保證數據的一致性和完整性。1.5 交易傳輸RealSync技術為了保證數據傳輸的安全、可靠,在傳輸處理上作了特殊的處理與支持:(1)數據在傳輸之前首先存入DataSource端的Cache,傳輸進程(sender)從Cache中讀取交易數據封
9、裝為TCP/IP數據包彳專送給Datatarget端的vagentd進程。(2)在datatarget端,vagentd進程在收到傳輸的交易數據包后,首先存入Queue,然后由Load進程從Queue中嚴格按照交易的順序裝載交易信息。HeaderBodyCaptureProcessio11121314151617QueueExportProcess如上圖所示,負責傳輸的進程(sender)從本地隊列中按照先進先出的原則抓取需要傳輸的交易,將交易數據封裝成一個數據包后通過TCP/IP協議傳遞給對端系統。在封裝的數據包的包頭部分描述了包的大小。對端系統在接受到傳來的數據包后,首先根據包頭描述的包大
10、小進行傳輸的合法性檢查,判斷是否傳輸完整。1.6 數據裝載在傳統的復制技術中,常用白數據裝載方式是采用Oracle的SQL接口,通過Insert、Update、Delete等SQL語句實現數據的裝載。這種方式在通用性上很好,但關鍵在于性能問題非常突出。SQL語句的執行需要經過parseplan、格式轉換等過程,造成大量的系統開銷。尤其是update和Delte操作的大量Where子句操作需要進行復雜的查詢定位任務,從而導致裝載性能低下,對處理能力的要求比生產系統的還高。DSGRealSync在設計之初就定位于電信級大數據量系統的應用,因此在裝載性能上進行了大幅度的改善,使得裝載端的性能和處理能
11、力需求降至最低。在其中DSGRealSync采用了兩個關鍵的技術提高了裝載速度:(1)采用XF1數據格式的裝載;(2)采用Rowidmapping的方式實現快速定位;XF1(DSGExtendFormat)格式是DSG公司的專有技術,該技術是DSG公司用來表達SQL指令的方式,該數據格式能夠通過DSG的專有轉換算法能夠直接轉換為ORACL的內部數據表達格式,從而在分析和轉載時需要最小的轉化,提高分析和裝載速度,減少資源占用、豐富sql語句的表達方式。Oracle數據庫系統在設方t上提供了4個層次的接口,其中包括User層,SQL層,Transformation層和I/O層。其結構為:USERS
12、QLTransformationI/O3i-在這四層當中,當采用SQL接口進行數據裝載時,調用的是User層,而DSGRealSync通過XF1數據格式裝載時,調用I/O層直接將數據通過Oracle的最底層函數寫入系統中,所以DSGRealSync在裝載層上有一定優勢;對于交易中的操作,存在著大量的Where子句操作,在采用標準SQL語句執行這些操這將帶來大量的索引查詢開作時,系統需要首先定位目標記錄所在的數據文件的位置信息,銷,當并發執行數千條指令時,系統的開銷將變得非常龐大。DSGRealSync工具不采用該方式實現裝載數據的定位,而是通過ROWMapping的方式實現記錄的快速定位:當R
13、ealSync從源端Log文件中讀取交易數據時,將獲得該交易對應記錄的所在位置,用rowid表示為rowid_ds;當該交易在目標端裝載時,系統不翻譯為Where子句,而是去通過保存在目標端的rowmapping表獲得對應目標端該記錄的所在位置rowid,記錄為rowid_dt。從而在目標端裝載時通過rowid能夠直接定位于該數據需要寫入的位置。避免了大量的索引查找時間。每條記錄的rowmapping信息是在該記錄執行insert操作、sqlloader或首次批量同步時建立起來的。RealSync的優勢:DSG擴展格式XF1(DSGExtendFormat)是RealSync產品的一個核心技術
14、,是一種最高效率表示ORACLE記錄的數據格式,該格式只需要經過最小的轉換過程就能夠裝載到ORACLE數據庫中,并且裝載效率非常高。無需標準SQL語句執行的復雜過程加快裝載速度對于Update,Delete等帶Where子句的交易,可以大幅度提高裝載速度2realsync支持列表2.1 首次全同步( 1) 指定復制對象?指定需要復制的user?指定需要復制的表?指定哪些表需要復制?指定哪些表不需要復制( 2) 不停業務的首次全同步( 3) 指定表的重新全同步2.2 復制關系維護( 1) 添加新表到復制任務( 2) 刪除某些表的復制任務( 3) 添加新的用戶到復制任務( 4) 刪除某個用戶的復制
15、任務2.3 DML操作復制支持( 1) 支持的DML操作類型?Insert;?Update;?Delete;( 2) 支持對TruncateTable操作復制( 3) 支持DIRECTPATHLOADING在Logging模式下批量裝載數據的復制?sqlldrdirect=y?impdp?insertinto/*+APPEND*/(4提供ROWIDMapping模式的映射關系(支持Uniquekey和非uniquekey的表的復制)(5支持的DATATYPES:?CHAR?DATE?NUMBER?LONGVARCHAR?VARCHAR?VARCHAR2?NCHAR?NVARCHAR2?FLOA
16、T?LONG?LONGRAW?BLOB?CLOB?ROWID6 支持的Table類型?Tablewithpartitions?Tablewithchainedrows7 支持Insertall操作insertallwhen1=1thenintots_test_nokeyvalues(id,name,addr,info,sysdate,systimestamp,num)whenid=1000thenintots_testvalues(id+1,name,addr,info,sysdate,systimestamp,num)select*fromts_test;8 支持Merge操作beginfo
17、riin1.1000loopifmod(i,3)=0theninsertintots_testvalues(i,'測試'|i,'中上海','1',sysdate,systimestamp,i/200);endif;endloop;commit;foriin1.1000loopmergeintots_testausingdualbon(a.id=i)whenmatchedthenupdatesetname=測試'|to_char(sysdate,'yyyymmdd')whennotmatchedtheninsertvalue
18、s(i,'測試'|i,'中上海','1',sysdate,systimestamp,i/200);endloop;commit;end;2.4 DDL操作復制支持(1) 系統支持的DDL操作ObjectstypeOperatetype備注tablesCreatetableDroptableTruncatetableAltertable:column_clauses:add_column_clausesmodify_column_clausesdrop_column_clauserename_column_clauseconstraint_clau
19、ses:ADDconstraintsMODIFYconstraintsDropconstraintsalter_table_partitioning:add_table_partitiondrop_table_partitiontruncatepartitionindexesCreateAlterDropviewsCreateAlterDropsequencesCreateAlterfunctionsCreateAlterDropproceduresCreateAlterDroppackagesCreatepackageCreatepackagebodyAlterpackageDroppack
20、ageDroppackagebodygrantalterdatabaseuserCreateuserAlteruserDropuserroleCreateroleAlterroleDroprolecreatebodydirectoryCreatedirectoryDropdirectoryprofileCreateprofileAlterprofileDropprofiledblinkCreatedblinkAlterdblinkDropdblinkrevoke(2) 支持的DDL操作配置可在以上支持的DDL中進行一些DDL是否復制的配置,包括:?databaselevel的DDL過濾,可指定
21、role,user,dblink,profile等database級的操作是否需要同步?USERlevel的DDL過濾:可指定user級下的重要操作是否需要同步,例如可指定所有的droptable等大破壞性的操作都不能被復制。?TABLELEVEL的ddl過濾:可指定某些重要表的TRUNCATETABLE,DROPTABLE等大破壞性操作不被復制。2.5 常見的不支持操作及處理方式不支持的對象類型ClusterContextIOTTABLEORGANIZATIONEXTERNALtableNESTEDTABLEXMLTABLEDIRECTORYBITMAPINDEXDomainindexesL
22、ibraryType/typebodyUserdefinedtypeBFILE以上對象或者數據類型DSGRealsync暫時沒支持,但如果應用中的確用到了這些對象,DSG將承諾馬上支持,因為這些對象的數據已經分析到了,只不過是過濾了而已。不支才!的database級的常見操作alterdatabaseaddtablespacealterdatabaseadddatafilealtersystem不支持的schema下的對象操作對于nologging的table上執行的如下操作:insert/*+append*/,impdp,sqlldrdirect=y;對于不支持的操作,只需要對這些表或整個s
23、chema進行一次全同步就能夠把數據全部復制過去。3各復制端口一覽表生產系統容災系統復制內容口腔醫院復制IP:130.1.10.19安裝路徑:/oracle/realsync登錄用戶名:oracleDbpsdport:60000Vagentdport:60001IP:130.1.31.8安裝路徑:/oracle/realsync登錄用戶名:oracleVagentdport:60001DSGDSGXXKLOGXXKLOGOUTPBILLOUTPBILLMHISMHISNURSINGNURSINGJJFORMJJFORMPRODUCTKEYPRODUCTKEYCPRCPRBONUSBONUSTO
24、ADTOADAPPINFACEAPPINFACEEXAMLABINTFACEEXAMLABINTFACEECONSTATECONSTATLABLABADMINISTRATORADMINISTRATORITF_BALJITF_BALJPHARMACYPHARMACYEQUIPMENTEQUIPMENTINSURANCEINSURANCEINPBILLINPBILLSYSHISSYSHISOUTPADMOUTPADMPACSPACSINQUIREINQUIREPHYEXAMPHYEXAMSURGERYSURGERYBLDBANKBLDBANKINPADMINPADMLOGINLOGINHCMSHC
25、MSACCTACCTORDADMORDADMCOMMCOMMEXAMEXAMTJTJOUTPDOCTOUTPDOCTMEDADMMEDADMINFECTINFECTWIRELESSWIRELESSMEDRECMEDRECINTERFACEINTERFACE本地復制IP:130.1.10.18安裝路徑:/sharedisk/realsync登錄用戶名:oraclevagentdport:50001dbpsdport:50000IP:130.1.10.6安裝路徑:/dsg/realsync登錄用戶名:oraclevagentdport:50001DSGDSGXXKLOGXXKLOGOUTPBILL
26、OUTPBILLMHISMHISNURSINGNURSINGJJFORMJJFORMPRODUCTKEYPRODUCTKEYCPRCPRBONUSBONUSTOADTOADAPPINFACEAPPINFACEEXAMLABINTFACEEXAMLABINTFACEECONSTATECONSTATLABLABADMINISTRATORADMINISTRATORITF_BALJITF_BALJPHARMACYPHARMACYEQUIPMENTEQUIPMENTINSURANCEINSURANCEINPBILLINPBILLSYSHISSYSHISOUTPADMOUTPADMPACSPACSINQU
27、IREINQUIREPHYEXAMPHYEXAMSURGERYSURGERYBLDBANKBLDBANKINPADMINPADMLOGINLOGINHCMSHCMSACCTACCTORDADMORDADMCOMMCOMMEXAMEXAMTJTJOUTPDOCTOUTPDOCTMEDADMMEDADMINFECTINFECTWIRELESSWIRELESSMEDRECMEDRECINTERFACEINTERFACE4軟件部署結構說明Realsync進程部署vmanRedo log控制信息流Oracle如上圖所示,RealSync在生產數據庫(source)上和備份系統端(target)分別安裝A
28、gent進程,Source端的vagent進程對ORACLE日志進行監控,發現改變及時對目標數據庫進行更新。當應用系統在Source端向數據庫進行任何操作時時,這些信息都將在RedoLog中保存,RealSyncAgent通過對實時獲取的Log日志進行分析,獲得本次操作的交易指令和交易數據,然后將這些交易指令和交易數據經過格式轉化生成XF1數據格式,并由發送進程sender實時通過網絡傳送到Target系統。Target系統的vagentd進程接收數據庫包,經過校驗碼檢查,確認正確的數據庫包后,由裝載進程loder調用Oracle函數按照交易的先后順序在Target系統中執行該交易。dbpsd
29、進程為管理控制進程,該進程是在作系統配置和發起全同步時使用的,該進程一般安裝在生產系統上。vman程序為配置終端,該終端通過dbpsd進程管理source和target上的vagentd程序。5發起全同步并啟動復制發起全步的方式就是在bin目錄下執行vm文件。源端的全同步1.setdm過程的日志信息setdm過程是realsync軟件中進行數據的導出和導入過程,該過程分為源端導出過程和目標端裝載過程。導出過程的日志在源端的log/log.vagentd文件中,在導出過程中的日志信息如下:Log.vagentd日志內容(全同步過程中)如果出現以上信息表明全同步過程正常開始。10g.s0,log.
30、s1,log.s2,log.s3是全同步過程中目標端的日志執行tail-f10g.s0日志不斷變化并且無錯誤提示表明目標端裝載正常。2.如何判斷全同步過程順利完成全同步過程的完成分為兩個階段:源端導出過程完成和目標端裝載過程完成。源端導出過程完成的標志:源端導出過程都打印在log.vagentd日志中,在該日志的導出完成后會看到如下信息:當看到以上的全同步導出統計信息時,可認為源端的導出已經結束目標端裝載過程完成的檢查:目標端的裝載是有多個隊列共同完成的,因此我們需要監測幾個隊列下都已經完成了。檢查一:檢查目標端的log.s*日志中已經沒有新的任務在執行。檢查二:檢查目標端的rmp/sync0
31、,sync1,sync2隊列中已經沒有任何xf1文件。當目標端裝載完成全同步的數據后,將自動進入到實時同步階段,我們可以通過查看目標端的log.r0觀察系統是否已經自動進入到了實時同步階段:6realsync目錄和文件結構說明6.1 源端安裝目錄說明安裝完成的目錄結構如下:Scripts目錄:所有腳本所在目錄$VCFS_HOME:該環境變量一般設為vcfsa,用以保存系統運行狀態,如log讀取的位置,uncommitted交易、統計信息$XLDR_HOME:該環境變量一般設為rmp,用以保存數據傳輸之前的緩存隊列和傳輸控制信息bin目錄:執行文件所在目錄Vcfsd目錄:系統配置信息,由dbps
32、d進程使用6.1.1 config目錄重點文件說明mapping.ini:setdm命令中用到的映射關系文件。ddl.ini:對DDL操作過濾進行設置的配置文件。6.1.2 scripts目錄中的文件說明stop_vagentd:停止realsync進程的腳本。clean_vagentd:刪除realsync工作過程中的所有的中間狀態。注:clean_vagentd腳本只有在必須作重新全同步的時候才能使用,否則將造成很大的破壞性。check:檢查realsync所有啟動的進程命令。6.1.3 bin目錄重點文件說明bin目錄為所有執行文件和vm文件的存放地點vagentd:日志分析程序。sen
33、der:數據發送程序。dbpsd:服務程序。vman:字符菜單管理工具。vm:全同步執行批處理文件。其他命令均為DSG公司的工具程序,是為了檢查問題時所使用的工具,用戶可不必掌握。6.1.4 log目錄重點文件說明log目錄存放了所有的進程日志文件:log.vagentd:日志分析過程的log文件。log.sender:發送過程的log文件。log.dbpsd:dbpsd進程的log文件。archivelog目錄:該目錄下為歷史的log.vagentd和log.sender文件,這些文件可隨時刪除。6.1.5 rmp目錄重點文件說明源端rmp目錄存放了所有發送的隊列信息*.xf1文件:為sen
34、der發送的隊列文件2.cfg.senderno:sender隊列的控制文件6.2 目標端安裝目錄說明Scripts目錄:所有腳本所在目錄$VCFS_HOME:該環境變量一般設為vcfsa,用以保存系統運行狀態,$XLDR_HOME:類據裝載之前的緩存隊列和裝載控制信息-Rowidmapping文件W數據庫的數據字典文件bin目錄:執行文件所在目錄6.2.1 scripts目錄重點文件說明stop_vagentd:停止realsync進程的腳本。clean_vagentd:刪除realsync工作過程中的所有的中間狀態。注:clean_vagentd腳本只有在必須作重新全同步的時候才能使用,否
35、則將造成很大的破壞性。check:檢查realsync所有啟動的進程命令。6.2.2 bin目錄重點文件說明bin目錄為所有執行文件和vm文件的存放地點vagentd:日志分析程序。loader:裝載進程。其他命令均為DSG公司的工具程序,是為了檢查問題時所使用的工具,用戶可不必掌握。6.2.3 log目錄重點文件說明log目錄存放了所有的進程日志文件:log.vagentd:數據接收過程的log文件。log.s0、log.s1、log.s2、log.s3:全同步過程中的裝載日志文件。log.r0:增量復制過程中的裝載日志文件。archivelog目錄:該目錄下為歷史的log.r0,這些文件可
36、隨時刪除。6.2.4 rmp目錄重點文件說明real0/*.xf1文件:為實時裝載過程的隊列文件sync0,sync1,sync2:分別為3個全同步裝載隊列中的隊列文件imp_*目錄:其中:o00010a19目錄為表的rowidmapping映射關系s_dict.xf1:為源端的數據字典7realsync日常維護7.1 進程檢查7.1.1 數據復制的進程檢查源端的進程檢查:以上進程中,必須保證2個vagentd,2個sender和1個dbpsd進程的正常運行;目標端的進程檢查:以上進程中,實時同步過程必須保證vagentd,loader-r進程的正常運行;全同步過程中必須保證vagentd,l
37、oader-s進程的正常運行7.2 如何停止和啟動進程7.2.1 源端進程的停止7.2.2 源端進程的啟動以上進程中,必須保證vagentd,sender和dbpsd進程的正常運行;7.2.3 目標端進程的停止7.2.4 目標端進程的啟動7.3 日志監控7.3.1 源端日志分析監控1)查看源端rmp目錄下的cfg.finishseq文件,可以查到源端已經分析完的數據庫日志文件。第一列表示主機節點,第二列表示已經分析完的數據庫日志文件號。2)查看源端log目錄下的log.vagentd文件,可以查看源端分析到什么時間的交易。如下的日志:grp#sizeseq#bsznabflgdupTHNext
38、-SCN2011/12/2015:37:2210419225621140102430924188110xffffffffffff21140.3087803.012419225615934102425588668120xffffffffffff15934.2554159.0THREAD1of2:SCN_MAX:0xb4b10d4.02680001Finish-0THREAD2of2:SCN_MAX:0xb4b10d3.f4770001Finish-0THREAD-2SCN_MAX:0xb4b10d3f4770001ISMinSCN(mini=1).2011-01-12:15:37:22:proc
39、essingrba15934.2554159.0(ckp:15934.2558866.x).2011-01-12:15:37:22:processedreturnedonrba15934.2558866.0(ckp:15934.2558866.x)SCN0xb4b10d4.2f1e0001in2011-01-12:15:37:21(U:9:14056,C:19:11339)4-I0-D6-U0-DDL16transactions,len=14678cachedin/dsg/etlplus/vcfsa/committed.cache.new紅色時間表示源端數據庫交易操作時間藍色時間表示源端分析此
40、交易的時間兩者相減可以得出源端分析滯后的時間3)查看源端vcfsa目錄下的src_total.txt文件,可以知道源端分析出交易的具體信息。如下的日志:rac2/sharedisk/realsync/vcfsa$tail-5src_total.txt2012-01-14:11:41:05LEN:1620-I0-D3-U0-DDL2012-01-14:11:41:08LEN:5050-I0-D9-U0-DDL2012-01-14:11:41:11LEN:10126-I0-D0-U0-DDL2012-01-14:11:41:11LEN:3532-I1-D1-U0-DDL2012-01-14:11:
41、41:14LEN:1550-I0-D3-U0-DDLrac2/sharedisk/realsync/vcfsa$源端vagentd進程日志查看:(這里以本地的當前數據同步為例)源端sender進程日志查看:(這里以本地的當前數據同步端口為例)7.3.2 目標端裝載日志1)查看目標端10g目錄下的log.r0文件。如果是目標端多路實時裝載,同時查看log.n、1og.r2、log.rX文件。如如下1og.r0文件:Loader:209278.xf12011-01-12:15:45:17:(commit)SCN0xb4b1101.9e170001,Time2011-01-1215:45:10201
42、1-01-12:15:45:17:46-I0-D37-U0-DDL(0ms)(7s)Loader:209279.xf12011-01-12:15:45:18:(commit)SCN0xb4b1101.b9ad0001,Time2011-01-1215:45:132011-01-12:15:45:18:179-I0-D43-U0-DDL(0ms)(5s)紅色部分表示:目標端裝載相應xf1文件的編號藍色部分表示:目標端裝載此xf1文件的系統時間紫色部分表示:此xf1文件的具體操作的類型及相應的個數綠色部分表示:裝載此xf1花費的時間黃色部分表示:裝載此xf1后和系統當前scn號相差的時間2)查看目
43、標端rmp目錄下的tgt_total.txt文件,可以知道目標端裝載的具體信息。如如下的tgt_total.txt文件:/dsg/realsync/rmp/real0/209433.xf1:CreateTime:2011-01-1215:49:31(commit),SCN0xb4b1121.ea6b0001,Time2011-01-1215:49:25(commit),SCN0xb4b1121.eacc0001,Time2011-01-1215:49:25(commit),SCN0xb4b1122.13070001,Time2011-01-1215:49:282011-01-12:15:49:
44、34LEN:68071359-I0-D76-U0-DDLTXN-44紅色部分表示:目標端日常接收到的xf1文件編號及在目標端保存創建此xf1文件目標端的系統時間藍色部分表示:目標端日常接收到此xf1在源端oracle內部的scn號和在源端交易的源端系統時間紫色部分表示:目標端日常接收到此xf1在目標端裝載完的目標端系統時間及相應此xf1文件的大小和相應交易的類型和相關交易的個數紫色時間減去藍色時間:表示源端在數據庫里真正交易時間和目標端真正裝載到數據庫時間的相差時間(當然要保持源端主機和目標端主機系統時間一致)目標端loader進程日志查看:(這里以本地的當前數據同步為例)7.4 隊列累積查看
45、7.4.1 源端日常是否xf1積壓1 .查看源端rmp目錄下是否有大量xf1文件積壓,正常的情況下rmp目錄下不會有很多xf1文件存在。如果存在不過數量不多,并且xf1文件的最小編號始終在變化,說明可能是傳送的慢;2 .查看源端log目錄下的log.sender文件,看是否有變化(而且不是重試的信息)3 .查看源端rmp目錄下的2.cfg.senderno文件,看是否第一列和第二列數值是否相差很大。第二列比第一列大很多說明源端日常xf1有積壓,另外第一列數值不再變化,說明源端日常xf1文件有積壓(當然這兩種情況在同步某張或某些表的時候,會有這種情況發生,因為在這同步某張或某些表的沒有完成時,新
46、生成的xf1文件是不會傳送到目標端的,源端會造成xf1文件的階段時間積壓)造成源端積壓的可能原因:(1) 源端目標端之間的網絡故障(2) 目標端進程停止(3) 源端發送停止或出錯源端發送隊列累積查看:(這里以本地的當前數據同步為例)7.4.2 目標端日常是否xf1積壓1 .查看目標端rmp目錄下的real。目錄下是否有大量xf1文件積壓2 .查看目標端log目錄下的log.r0文件是否有日志累加寫入(不是重復信息)3 .查看目標端rmp/real0目錄下的cfg.loaderno文件,第一列和第二列的數值是否相差很大,如果第二列比第一列數值大很多說明目標端日常xf1文件有累積,同時如果第一列數
47、值長時間不變動,說明目標端日常xf1文件有累積。源端發送到目標端隊列累積查看:(這里以本地的當前數據同步為例7.5 如何進行重新全同步這里以本地當前數據端口為例說明如何進行重新全同步。7.5.1 停止并清空源端的realsync程序只需執行full_sync_ds.sh7.5.2 停止并清空目標端的realsync程序秩序執行full_sync_dt.sh7.5.3 重新啟動源端的realsync程序只需執行start_dsg.sh7.5.4重新啟動目標端的realsync程序只需執行start_dsg_dt.sh7.5.5確認全同步已經結束并且進入到實時同步階段、確認源端已經開始數據導出:如
48、果出現以上信息表明全同步過程正常開始。、確認目標端的loader已經開始裝載數據:三、判斷源端導出結束:源端導出過程都打印在log.vagentd日志中,在該日志的導出完成后會看到如下信息:當看到以上的全同步導出統計信息時,可認為源端的導出已經結束四、確認目標端裝載結束:檢查一:檢查目標端的log.s*日志中已經沒有新的任務在執行。檢查二:檢查目標端的rmp/sync0,sync1,sync2隊列中已經沒有任何xf1文件。五、確認目標端已經開始實時裝載:當目標端裝載完成全同步的數據后,將自動進入到實時同步階段,我們可以通過查看目標端的log.r0觀察系統是否已經自動進入到了實時同步階段:7.6
49、 如何修改日志分析間隔$cd/realsync/bin$./vmanVMAN>connect:50000userroot/dbpssetds1-itvl3-statestart該日志間隔可以在15秒間任意設置,設置成幾秒中RealSync每隔幾秒鐘就會去讀取一次redolog在證券行業推薦使用3秒注:-itvl3讀取日志間隔7.7 維護需要過濾的DDL操作7.7.1 過濾DDL操作的意義RealSync提供過濾DDL操作功能是為了有效的防止生產系統上由于誤操作執行了drop或者truncate等DDL操作后,容災系統可以對這些危險的DDL操作進行過濾從而保證,一旦在主庫上進行了誤操作還可
50、以將容災庫的數據恢復到備庫中去。7.7.2 支持的過濾操作種類cd/realsync/scripts/編輯ddl.ini文件可供過濾的操作如下:# tablecreate_table=ydrop_table=yalter_table=yanalyze_table=ytruncate_table=y# indexcreate_index=ydrop_index=yalter_index=yanalyze_index=y# sequencecreate_sequence=yalter_sequence=ydrop_sequence=y# synonymcreate_synonym=ydrop_synonym=yalter_synonym=y# viewcreate_view=ydrop_view=yalter_view=y# procedurecreate_procedure=yalter_procedure=ydrop_procedure=y# triggercreate_trigger=yalter_trigger=ydrop_trigger=y
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 直播平臺營銷服務的深度定制化探索
- 車間班長考試試題及答案
- 蚌埠市第四中醫院招聘筆試真題2024
- STEAM理念在《勾股定理》教學中的應用
- 2024年7月農網配電營業工試題庫與參考答案
- 6~9的加、減法第7課時 練一練 教案 2025人教版數學一年級上冊
- 胎兒護理在線教育平臺應用試卷
- 智慧博物館技術革新:統一數據平臺與大語言模型的應用路徑探索
- 第2課時 簡易方程 教案 人教版數學五年級上冊
- 勘探工地質項目知識管理考試試卷
- 總承包管理技術方案
- 2024山西航空產業集團有限公司招聘筆試參考題庫附帶答案詳解
- 大學生心理健康教育(周莉第四版) 課件 第1-5章 主動掌控:打造健康生活-戀愛與性:理解親密關系
- 家庭教育學整套課件
- 營銷人員財務必備之財務與營銷結合
- 公安出入境培訓課件
- 領袖涅盤培訓
- 鍛壓設備安裝工程施工及驗收規范
- 瑞安市工業固廢與污泥無害化處置及資源化利用項目階段性竣工環境保護驗收報告
- 檢驗科對急診凝血標本質量不合格原因分析品管圈魚骨圖柏拉圖
- 中草藥的種植技術
評論
0/150
提交評論