版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、OraclOracle GoldenGate數(shù)據(jù)庫(kù)同步技術(shù)Oracle GoldenGate TDM是一種基于軟件的數(shù)據(jù)復(fù)制方式,它從數(shù)據(jù)庫(kù)的日志解析數(shù) 據(jù)的變化。Oracle Data In tegratorOracle Golde nGate 的技術(shù)原理利用 GoldenGate 同步 SQL Sever2000數(shù)據(jù)TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸 TechTarget 中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。lecKlarget TT申國(guó)Oracle Golde nGate數(shù)據(jù)庫(kù)同步技術(shù)Oracle Golde nGate 是一款實(shí)時(shí)訪問(wèn)、基于日志變化捕捉數(shù)據(jù),并且
2、在異構(gòu)平臺(tái)之間進(jìn)行數(shù)據(jù)傳輸?shù)漠a(chǎn)品。利用這個(gè)技術(shù), Golde nGate 能夠?qū)崿F(xiàn)低延遲、高性能、低影響進(jìn)行連續(xù)的數(shù)據(jù)集成。一一趙宇TTHtaS始切入正題之前,我們先來(lái)看一項(xiàng)數(shù)據(jù)庫(kù)市場(chǎng)的調(diào)查:權(quán)威 調(diào)查機(jī)構(gòu)的報(bào)告顯示,數(shù)據(jù)庫(kù)市場(chǎng)在近幾年分布占據(jù)主導(dǎo)地位的還是 Oracle、DB2、SQL Server?,F(xiàn)在隨著企業(yè)信息化水平的不斷提高,很多企業(yè)也都上很多信息化的系統(tǒng),比如OA系統(tǒng)、訂單系統(tǒng)、網(wǎng)站、ERP、數(shù)據(jù)倉(cāng)庫(kù)、計(jì)費(fèi)等系統(tǒng),在證券、銀行、電信、保險(xiǎn)、網(wǎng)站等 行業(yè)更是多個(gè)數(shù)據(jù)庫(kù)系統(tǒng)并存的情況。數(shù)據(jù)庫(kù)多種多樣、版本又不統(tǒng)一,這樣就 給企業(yè)在做數(shù)據(jù)分析以及匯總帶來(lái)很大的難度。通??蛻魰?huì)選擇自己寫腳
3、本、開 發(fā)程序來(lái)做數(shù)據(jù)的同步,往往效率不高,程序還需要經(jīng)常維護(hù)。SQL Server在中小企業(yè)、證券市場(chǎng)占比較大的比重,我們這里就舉例SQL Server之間的數(shù)據(jù)庫(kù)同步。Dividing the Database PieWorldwide RDBMS software license re/enue20052006OracleOracle44.4%44.3%NCR Terd«t«SybaseTotal: $16.5 billionIBM 2L6%NCR TrdtaSybaseTotal: $14.4 billion4TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)
4、容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。Source: I DC#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHiiSDatabase Market Share by Revenuee 200S Share 2006 5hare如果不通過(guò)開發(fā)程序代碼來(lái)完成SQL Server 2000/2005 的數(shù)據(jù)同步到SQL Server 2000/2005數(shù)據(jù)庫(kù)中,有哪些方案可以選擇呢?SQL S
5、erver 本身就提供了很多解決方案,比如大家很熟悉的Microsoft Sn apshot ReplicationMicrosoftTran sacti onalReplicati on,Microsoft Merge Replicatio n 。但是這些方案在實(shí)時(shí)數(shù)據(jù)捕捉、數(shù)據(jù)同步靈活性以及雙向復(fù)制方面都不夠完善,我們 在后期電子書中也會(huì)介紹。Oracle公司在過(guò)去3年收購(gòu)了 2款強(qiáng)大的產(chǎn)品, Oracle Data Integrator和 Oracle Goldengate 。TTKaB很Oracle Data In tegratorOracle Data In tegrator數(shù)據(jù)集成
6、器是一個(gè)全面的數(shù)據(jù)集成平臺(tái),它能滿足所有數(shù)據(jù)集成要求,涉及領(lǐng)域包括高容量、高性能批處理、事件驅(qū)動(dòng)的少量傳送 集成過(guò)程以及支持SOA的數(shù)據(jù)服務(wù)。ODI集成了很多數(shù)據(jù)庫(kù)的功能模塊以及java開發(fā)完整的模塊,可以利用 JDBC協(xié)助我們完成MSSQL到Oracle的同步,但是ODI強(qiáng)大的功能在于可以對(duì)數(shù)據(jù)進(jìn)行提取、過(guò)濾、轉(zhuǎn)換、加載,比傳統(tǒng)的ETL工具更完善,而且可以實(shí)現(xiàn)工作流、流程控制等。在這期雜志,我們主要是 利用Oracle Goldengate 這個(gè)產(chǎn)品來(lái)做異構(gòu)數(shù)據(jù)庫(kù)、異構(gòu)平臺(tái)間的數(shù)據(jù)同步。Oracle Golde ngate 是一款實(shí)時(shí)訪問(wèn)、基于日志變化捕捉數(shù)據(jù),并且在異構(gòu) 平臺(tái)之間進(jìn)行數(shù)據(jù)傳
7、輸?shù)漠a(chǎn)品。利用這個(gè)技術(shù),Golde ngate 能夠?qū)崿F(xiàn)低延遲、高性能、低影響進(jìn)行連續(xù)的數(shù)據(jù)集成。Oracle GoldenGate 技術(shù)原理TTHMBGoldenGate TDM (交易數(shù)據(jù)管理)軟件是一種基于日志的結(jié)構(gòu)化數(shù)據(jù)復(fù)制 軟件,它通過(guò)解析源數(shù)據(jù)庫(kù)在線日志或歸檔日志獲得數(shù)據(jù)的增刪改變化,再將這些 變化應(yīng)用到目標(biāo)數(shù)據(jù)庫(kù),實(shí)現(xiàn)源數(shù)據(jù)庫(kù)與目標(biāo)數(shù)據(jù)庫(kù)同步、雙活。Golde nGateTDM軟件可以在異構(gòu)的IT基礎(chǔ)結(jié)構(gòu)(包括幾乎所有常用操作系統(tǒng)平臺(tái)和數(shù)據(jù)庫(kù)平臺(tái))之間實(shí)現(xiàn)大量數(shù)據(jù)亞秒一級(jí)的實(shí)時(shí)復(fù)制,其復(fù)制過(guò)程簡(jiǎn)圖如下:MUFCED8 tXrKACT EX 11 KAIL tATRACl *pun
8、p>hetvwriiRMTHOSTKMTT btMl 舄trjjpk如上圖所示,Golde nGate TDM的數(shù)據(jù)復(fù)制過(guò)程如下:利用捕 捉進(jìn)程(Extract Process)在 源系統(tǒng) 端讀取 Online Redo Log 或Archive Log,然后進(jìn)行解析,只提取其中數(shù)據(jù)的變化如增、刪、改操作,并將相 關(guān)信息轉(zhuǎn)換為GoldenGate TDM自定義的中間格式存放在隊(duì)列文件(trail file)中。 再利用傳送進(jìn)程將隊(duì)列文件通過(guò)TCP/IP傳送到目標(biāo)系統(tǒng)。捕捉進(jìn)程在每次讀完 log 中的數(shù)據(jù)變化并在數(shù)據(jù)傳送到目標(biāo)系統(tǒng)后,會(huì)寫檢查點(diǎn),記錄當(dāng)前完成捕捉的log位置,檢查點(diǎn)的存在可
9、以使捕捉進(jìn)程在中止并恢復(fù)后可從檢查點(diǎn)位置繼續(xù)復(fù)制;目標(biāo)系統(tǒng)接受數(shù)據(jù)變化并緩存到GoldenGate TDM隊(duì)列當(dāng)中,隊(duì)列為系列臨時(shí)存儲(chǔ)數(shù)據(jù)變化的文件,等待投遞進(jìn)程讀取數(shù)據(jù);(2? Smfc h Databa 昶com+5TTIHI 暉GoldenGate TDM 投遞進(jìn)程(replicat process)從隊(duì)列中讀取數(shù)據(jù)變化并創(chuàng)建 對(duì)應(yīng)的SQL語(yǔ)句,通過(guò)數(shù)據(jù)庫(kù)的本地接口執(zhí)行,提交到數(shù)據(jù)庫(kù)成功后更新自己的檢 查點(diǎn),記錄已經(jīng)完成復(fù)制的位置,數(shù)據(jù)的復(fù)制過(guò)程最終完成。由此可見,GoldenGate TDM是一種基于軟件的數(shù)據(jù)復(fù)制方式,它從數(shù)據(jù)庫(kù) 的日志解析數(shù)據(jù)的變化(數(shù)據(jù)量只有日志的四分之一左右)。
10、Golde nGate TDM將數(shù)據(jù)變化轉(zhuǎn)化為自己的格式,直接通過(guò)TCP/IP網(wǎng)絡(luò)傳輸,無(wú)需依賴于數(shù)據(jù)庫(kù)自身的傳遞方式,而且可以通過(guò)高達(dá)10:1的壓縮率對(duì)數(shù)據(jù)進(jìn)行壓縮,可以大大降低帶寬需求。在目標(biāo)端,GoldenGate TDM可以通過(guò)交易重組,分批加載等技術(shù)手段 大大加快數(shù)據(jù)投遞的速度和效率,降低目標(biāo)系統(tǒng)的資源占用,可以在亞秒級(jí)實(shí)現(xiàn)大 量數(shù)據(jù)的復(fù)制,并且目標(biāo)端數(shù)據(jù)庫(kù)是活動(dòng)的。下面詳細(xì)介紹利用 Goldengate 同步SQL Sever 2000至U SQL Server 2000 表 數(shù)據(jù)的具體實(shí)現(xiàn)。利用 GoldenGate同步 SQL Sever 200數(shù)據(jù)測(cè)試環(huán)境:Windows X
11、PGolde ngate V10.4目標(biāo)數(shù)據(jù)庫(kù):MSSQL 2000 db02測(cè)試用戶:Db01庫(kù):ggstrn01Db02 庫(kù):ggstrn02C:Docume nts and Sett in gs'golde ngate>cd c:gg-sqlOracle Golde nGate Comma nd In terpreter for ODBCVersio n 10.4.0.19 Build 002Win dows (optimized), Microsoft SQL Server on Sep 21 2009 09:10:43Copyright (C) 1995, 2009,
12、Oracle an d/or its affiliates. All rights reserved.GGSCI (GGSEDU50) 1> edit params ./GLOBALScheckpo in ttable ggusr.checkpo intMGRSERVNAME GGMGRSQLSERVERGGSCI (GGSEDU50) 3> EXITC:gg-sql>i nstall ADDSERVICE AUTOSTARTService 'GGMGRSQLSERVER' created.In stall program termi nated n orma
13、lly.GLOBALS 是Goldengate 的全局參數(shù)文件,編輯好以后呢,需要退出GGSCI才能生效。然后驗(yàn)證是否 Windows生產(chǎn)了相應(yīng)的服務(wù)。TTKliBC:gg-sql>sc query GGMGRSQLSERVERSERVICE_NAME: GGMGRSQLSERVERTYPE:10 WIN32_OWN_PROCESSSTATE:1 STOPPED(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)WIN32_EXIT_CODE : 1077(0x435)SERVICE_EXIT_CODE : 0 (0x0)CHECKPOINT : 0
14、x0WAIT HINT:0x0在利用Goldengate 做數(shù)據(jù)同步之前,需要配置數(shù)據(jù)庫(kù)的相關(guān)配置,具體如 下:指定數(shù)據(jù)源行的鍵指定行的唯一標(biāo)識(shí)Golde ngate 推薦能夠在源庫(kù)的行級(jí)別有唯一的標(biāo)識(shí),比如主鍵、唯一鍵,這 樣在目標(biāo)數(shù)據(jù)庫(kù)做刪除、修改時(shí)能及時(shí)定位相關(guān)的行數(shù)據(jù)。如果沒(méi)有主鍵、唯一鍵, Goldengate會(huì)把所有的數(shù)據(jù)都作為Where條件進(jìn)行數(shù)據(jù)操作的判斷條件。Golde ngate 會(huì)決定用哪種行唯一標(biāo)識(shí)Golde nGate 選擇行唯一標(biāo)識(shí)的優(yōu)先級(jí)如下:(2? Smfc h Databa 昶com+51"TIH暉1. Primary key 主鍵;2. 第一個(gè)不包
15、含timestamp 的唯一鍵;3. 也可以用KEYCOLS 在Extract TABLE 參數(shù)或者Replicat MAP 參數(shù)中 指定可以判斷唯一行的列。這個(gè)指定的列會(huì)覆蓋 Golde ngate 自己尋找到的唯一 標(biāo)識(shí)。注意如果沒(méi)有主鍵、唯一鍵也沒(méi)有用 KEYCOLS指定,GoldenGate 會(huì)在進(jìn) 程報(bào)告中提示消息,表明會(huì)用所有列的信息做唯一標(biāo)識(shí)。失效觸發(fā)器和級(jí)聯(lián)刪除的約束在目標(biāo)數(shù)據(jù)庫(kù),也就是本次測(cè)試的 oracle數(shù)據(jù)庫(kù)中停掉觸發(fā)器和級(jí)聯(lián)刪除的 約束,或者讓Goldengate 忽略他們產(chǎn)生的變化。下面要配置 ODBC連接MSSQL數(shù)據(jù)庫(kù),由于可以通過(guò) ODBC連接, ODBC也可
16、以配置遠(yuǎn)程的MSSQL數(shù)據(jù)庫(kù)。配置ODBC連接倉(cāng)y建一個(gè) SQL Server DSN控制面板 > 管理工具 > 數(shù)據(jù)源(ODBC)11TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。rch DxnTTItaa< QDBC gZ Source Administrator?|X|12TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。Cr
17、eate New Dat SourceVasion*Microsoft Patadox Olivet r”cfo J<(»,6304.00Microsoft Paradox-T;eiber (" db)4.006304 00Microsoft Tet Driver f*M; :«v4 006304 00M iemeft T T retber f.M:x. esv)4 006304 00Mtcracft Vuul FoxPro D 昨已VD0.02.0CM iCrQoft Vijul FoxPro tibe?100.02.00 |Oracle in 0r&am
18、p;10G101,00.02ISQL 詁伯2(00.65.1117.00T etadala3.0500 02H(tl11TSded 自 diivei for which you went to 吝盤 up a dah source.User DSN Sy血血 DSN | Fie DSN | Olivers | TEacirtg Connection Pooling j About |SpstemDaia Souters:_暢呷_ DrivenSQL ServerLocalsen/er SQL ServetAn 008C System data soutce scores iriformatio
19、rt about how (o ccwvect to the ihdcAted provider A System chta source is vkitde to aM usets on Ihh machine, including NI set vicesOK | Canedgpply | Hefe#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。Cancel I#TechTarget 中國(guó)Oracle 系列電
20、子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTRliK選擇MSSQL的數(shù)據(jù)服務(wù)器,指定源數(shù)據(jù)庫(kù)的名稱 dbO1在MSSQL里創(chuàng)建一個(gè)專門為Goldengate使用的用戶,輸入用戶名和密碼14TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。2? Scorch D1"TIH犀在這里,我們是把為golde ngate 分配的用戶存放了數(shù)據(jù),實(shí)際生產(chǎn)環(huán)境中, 為goldengate 創(chuàng)建一個(gè)用戶用于提取日志的操作,賦予相應(yīng)管理權(quán)限。而數(shù)據(jù)通 常存放在其他的用戶下面。然后選擇默認(rèn)的要提取數(shù)據(jù)的數(shù)據(jù)庫(kù)默認(rèn)
21、設(shè)置15TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。16TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHtaa#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。測(cè)試數(shù)據(jù)庫(kù)的連接ODBC Microsoft SQL Server SetupA new ODBC daia sot
22、ace vmII t>e 口年甜訊 艸lh the foBowingconNgivabonZJMicrosoft SQL Selver ODBC Drivef Versiofi 03 S5 1111Data Source Name: tfcOIData Source Description: gg m$ql soxceServer;嗣Database: dbOtLanguage: (DefaiA) IfAHshte Characte( Data Yes Log Long Running Queries: No LogDrivw SWistics: No Uselrttegraled Se
23、cuiity No Use Regional Sdting NoPrepped Statements Option Drop lempwy pgedbfM oo disconnectUseFadover Seryet: NoU$eAN$l Quoted Identifiers: Ye$Use ANSI Nul, Paddings and Wanngs: Yes DataEncrypJon No#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget
24、中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。jd#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。17TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHliB#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。配置SQL Server 2000的日志模式為了讓GoldenGate 從SQL Serv
25、er源系統(tǒng)提取日志的信息,需要做下面的設(shè)設(shè)置數(shù)據(jù)庫(kù)的日志模式為full recovery model. GoldenGate 要求關(guān)閉logtruncation 和 non-logged bulk copy.在啟動(dòng)Goldengate之前至少要做一次全數(shù)據(jù)庫(kù)備份。的企業(yè)管理器或者for SQL Server 2005/2000驗(yàn)證或者設(shè)置恢復(fù)模式1、用 SQL Server 2000TTStaB的 SQL Server Management Studio 進(jìn)入 SQL SERVER 的實(shí)例;2、展開數(shù)據(jù)庫(kù)的文件夾;3、右鍵單擊源數(shù)據(jù)庫(kù),然后選擇屬性;4、選擇option tab 頁(yè)面。完全備份
26、數(shù)據(jù)庫(kù)1、右鍵點(diǎn)擊數(shù)據(jù)庫(kù)的名字,選擇All Tasks > Backup Database.2、 Select Database - Complete.這個(gè)選項(xiàng)做全數(shù)據(jù)庫(kù)備份,并且確保19TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHMBGolde nGate 啟動(dòng)時(shí)不會(huì)有任何的事務(wù)丟失然后選擇數(shù)據(jù)庫(kù)備份的位置20TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTBta«備份成功提示。在前面的工作完成以后,數(shù)據(jù)庫(kù)的準(zhǔn)備工作就已經(jīng)基本完成了
27、,下面我們就開始直接配置Goldengate 針對(duì)源數(shù)據(jù)庫(kù)SQL Server的配置。啟用擴(kuò)展日志(附加日志)TTHMB啟用擴(kuò)展日志或附加日志是可以在數(shù)據(jù)庫(kù)里完成,也可以在Golde ngate 里完成,我們主要是介紹怎樣配置Goldengate ,Goldengate 安裝就不在這里介紹,具體安裝配置,參考: 01/doc.104/gg mss i nst v 104.pdf我們?cè)诤笃陔娮訒幸矔?huì)詳細(xì)介紹我們可以在Goldengate 里面利用ADD TRANDATA 命令啟用擴(kuò)展日志,讓提取進(jìn)程Extract捕獲用以在目標(biāo)庫(kù)重構(gòu) SQL所需要的日志信息.擴(kuò)展日志信息比SQL Server默
28、認(rèn)日志包含了更多數(shù)據(jù)的信息。這個(gè)命令要求對(duì)所有需要復(fù)制的表執(zhí)行。ADD TRANDATA 實(shí)現(xiàn)下面功能:如果源數(shù)據(jù)庫(kù)是 SQL Server 2000, ADD TRANDATA設(shè)置一個(gè)標(biāo)識(shí)在sysobjects 表,強(qiáng)制SQL Server日志記錄前鏡像和后鏡像信息,也就是變化前的數(shù)據(jù)和變化后的數(shù)據(jù)。在Golde ngate 啟用擴(kuò)展日志的命令:C:gg-sql>ggsciOracle Golde nGate Comma nd In terpreter for ODBCVersion 10.4.0.19 Build 002(2? Smfc h Databa 昶corn+5TTIHI 暉
29、Version 1040.19 Build 002Win dows (optimized), Microsoft SQL Server on Sep 21 2009 09:10:43Copyright (C) 1995, 2009, Oracle and/or its affiliates. All rights reserved.GGSCI (GGSEDU50) 2> dblogi n sourcedb db01, userid ggstrn01, passwordggstrn01Successfully logged into database.? SOURCEDB <DSN&
30、gt; is the name of the data source.? USERID <user>, PASSWORD <password> is the Extract login and password, ifExtract usesSQL Server authentication. Can be the Extract user or a member of an account inthe System Admi nistrators or Server Admi nistrators fixed server role.GGSCI (GGSEDU50)
31、5> add tra ndata ggstrn01.*Loggi ng of suppleme ntal log data is en abled for table ggstr n01.emp注釋:指定在線和備份日志的位置,指定一個(gè)可選的在線日志位置。改變提取進(jìn)程Extract到指定的位置抓取在線日志用下面參數(shù)TRANLOGOPTIONS結(jié)合參數(shù)ALTONLINELOGS,可以指定多個(gè)日志位置。指定備份日志的可選位置TTKliB默認(rèn)情況下,如果在線日志不包括正在處理的事務(wù),提取進(jìn)程Extract會(huì)直接讀備份的日志。如果提取進(jìn)程延遲很大,那么就會(huì)讀取備份的日志,在處理以后,就 不在需要讀
32、取這些日志。Extract進(jìn)程通常會(huì)直接到SQL Server的默認(rèn)位置去讀備份日志.如果你已經(jīng) 改變了默認(rèn)的存儲(chǔ)位置,你必須在EXTRACT進(jìn)程中指定參數(shù) TRANLOGOPTIONS 以及 ALTARCHIVELOGDEST 選項(xiàng),告訴 Extract 去哪里讀 取日志。在 SQL Server 源數(shù)據(jù)庫(kù)創(chuàng)建提取進(jìn)程Extract Group、DUMP GroupGGSCI (GGSEDU50) 8> ADD EXTRACT EXT_MSS, TRANLOG, BEGIN NOW EXTRACT added.GGSCI (GGSEDU50) 11> ADD EXTTRAIL .
33、/dirdat/et, EXTRACT EXT_MSS,MEGABYTES 50EXTTRAIL added.GGSCI (GGSEDU50) 10> ADD EXTRACT DUMP_MSS, EXTTRAILSOURCEEXTRACT added.GGSCI (GGSEDU50) 39> add RMTTRAIL c:/gg-sql/dirtrail/rt, EXTRACT DUMP_RMTTRAIL added.24TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。25TechTarget 中國(guó)Oracle 系列
34、電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHMB因?yàn)檫M(jìn)程創(chuàng)建以后,需要指定進(jìn)程的參數(shù)Extract Parameter#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。GGSCI (GGSEDU50) 18> view param ext_mssextract ext_mssdboptio ns NOCATALOGCONNECT, FETCHBATCHSIZE 1500,sou
35、rcedb db01, userid ggstr n01, password ggstr nO1-tra nlogoptio ns ALTARCHIVELOGDEST , ALTONLINELOGS ("c:SQLServerDataNorthWnd1df"), EXCLUDETRANS ggs_repl, QUERYRETRYCOUNT 40 exttrail ./dirdat/et-the default, causes Extract to write only the primary key and the-cha nged colu mns of a row to
36、 the trail for update operati ons. This provides eno ugh-information to update the correct target record, while restricting the amount of datathat must be processedCOMPRESSUPDATESGETTRUNCATESWILDCARDRESOLVE DYNAMICtable ggstrn01.*;GGSCI (GGSEDU50) 22> view param dump_mssextract dump_msspassthrurm
37、thost 192.168.40.128, mgrport 7809rmttrail c:/gg-sql/dirtrail/rtgettr un catesre h DxnTTKliBgettr un cateswildcardresolve dyn amictable ggstrnOI.*;GGSCI (GGSEDU50) 24> start extract ext_mssSending START request to MANAGER ('GGMGRSQLSERVER') .EXTRACT EXT_MSS starti ngGGSCI (GGSEDU50) 32>
38、; info exttrail ./dirdat/et, detailExtract Trail: ./dirdat/etExtract: EXT_MSSSeqno: 0RBA: 804File Size: 50MGGSCI (GGSEDU50) 34> start extract DUMP_MSSSending START request to MANAGER ('GGMGRSQLSERVER') .EXTRACT DUMP_MSS starti ngGGSCI (GGSEDU50) 49> info allProgram Status Group Lag Tim
39、e Since ChkptMANAGER RUNNINGEXTRACT RUNNING DUMP_MSS 00:00:0001:37:37EXTRACT RUNNING EXT_MSS 00:00:0000:00:0226TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。27TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。TTHMBREPLICATREPLICATSTOPPEDSTOPPEDREP_GGSRORA_SY00:00:0000:00:001518:33:
40、061518:33:05#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。#TechTarget 中國(guó)Oracle 系列電子書所有內(nèi)容版權(quán)均歸TechTarget中國(guó)所有,未經(jīng)許可不得轉(zhuǎn)載。Extract參數(shù)說(shuō)明:Extract :指定提取進(jìn)程的名稱NOCATALOGCONNECT :默認(rèn),提取進(jìn)程 Extract和復(fù)制進(jìn)程 Replicat創(chuàng)建 一個(gè)訪問(wèn)目錄的新連接FETCHBATCHSIZE :初始化數(shù)據(jù)加載時(shí),啟用批量提取改善性能 ,而不是一次 只去一行.如果提取的是LOB數(shù)據(jù),還是每次提取一行。SOURCEDB :就是指
41、定源數(shù)據(jù)庫(kù)的名稱、用戶名、密碼GETTRUNCATES :把TRUNCATE動(dòng)作看作DML來(lái)進(jìn)行處理wildcardresolve dynamic :表示不先讀取數(shù)據(jù)字典的信息,等Extract提取數(shù)據(jù)時(shí),再讀取數(shù)據(jù)字典信息,這樣就可以指定表的時(shí)候,直接寫schema.*COMPRESSUPDATES :默認(rèn)值,提取進(jìn)程Extract只寫primary key和行里 變化列的數(shù)據(jù)到trail文件,這已經(jīng)提供了足夠用于做 update操作的信息,而不是 把所有列的信息都寫到trail文件。exttrail :表明提取進(jìn)程提取日志以后,把數(shù)據(jù)寫到本地文件的位置(2? Smfc h Databa 昶
42、com+5TTIHI 暉詳細(xì)參數(shù)說(shuō)明參考: 01/doc.104/gg wux ref v104.pdfDUMP參數(shù)說(shuō)明:Passthru :因?yàn)镈UMP就是路由的功能,做數(shù)據(jù)網(wǎng)絡(luò)傳輸,這個(gè)參數(shù)就是表 示數(shù)據(jù)不做任何轉(zhuǎn)換就寫到遠(yuǎn)程trail文件。rmthost :指定遠(yuǎn)程數(shù)據(jù)庫(kù)服務(wù)器的IP地址和管理端口(默認(rèn)7809)rmttrail :指定DUMP把本地trail文件寫到遠(yuǎn)程什么位置。進(jìn)程參數(shù)設(shè)置好以后,通過(guò)start命令啟動(dòng)所有進(jìn)程,然后通過(guò)info all進(jìn)行驗(yàn) 證,如果所有都是running的狀態(tài),就表明進(jìn)程已經(jīng)識(shí)別數(shù)據(jù)庫(kù)信息,當(dāng)有任何事 務(wù)提交時(shí),就會(huì)讀取日志并且寫trail文件。源
43、數(shù)據(jù)庫(kù)提取進(jìn)程配置好以后,我們要在目標(biāo)數(shù)據(jù)庫(kù)配置傳遞進(jìn)程 replicatGGSCI (GGSEDU50) 70> ADD REPLICAT REP_MSS, EXTTRAIL c:/gg-sql/dirtrail/rt, checkpo in ttable ggstr nO 2.checkpo intREPLICAT added.TTKliBGGSCI (GGSEDU50) 58> view param rep_mss replicat rep_mss-dbopti ons n olimitrows-shows yn taxbatchsqltargetdb db02, useri
44、d ggstr n02, password ggstr n02 assumetargetdefs-ha ndlecollisio nsdiscardfile ./dirrpt/rep_mss.dsc, appe ndreperror default, discardgettr un cates wildcardresolve dyn amic map ggstr n01.*, target ggstr nO 2.*;參數(shù)說(shuō)明:replicat :指定復(fù)制進(jìn)程的名稱dboptions nolimitrows:如果沒(méi)有主鍵、唯一鍵,做 DML操作時(shí)會(huì)一行一行處理,如果希望批量處理用這個(gè)參數(shù)show
45、syntax :指定復(fù)制時(shí)候是否顯示應(yīng)用的 SQL語(yǔ)句batchsql :如果有批量的 DML,復(fù)制進(jìn)程可以把它們作為一個(gè)事務(wù)一次性(2? Smfc h Databa 昶com+51"TIH暉提交targetdb :指定目標(biāo)數(shù)據(jù)庫(kù)的名稱、用戶名、密碼assumetargetdefs:表示源端數(shù)據(jù)庫(kù)和目標(biāo)端數(shù)據(jù)庫(kù)的表結(jié)構(gòu)一致-ha ndlecollisio ns:如果出現(xiàn)唯一性約束的沖突,自動(dòng)解決沖突discardfile :如果出現(xiàn)不符合規(guī)則的數(shù)據(jù),放到這個(gè)參數(shù)指定的文件,為后期處理Gettruncates :把 truncate 當(dāng)作 DML 語(yǔ)句處理map ggstrnO1*,
46、target ggstrn02.*:表明從源庫(kù)那個(gè)用戶下的表,復(fù)制到目標(biāo)數(shù)據(jù)庫(kù)下哪個(gè)用戶的表在目標(biāo)數(shù)據(jù)庫(kù)還原我們之前在源庫(kù)DB01做的全庫(kù)備份集1、all tasks->take offline db022、select options- > select “ force restore over existing database3、click okTTUtaB因?yàn)閿?shù)據(jù)庫(kù)是從源庫(kù)還原過(guò)來(lái)的,源庫(kù)的數(shù)據(jù)庫(kù)用戶是ggstrnOI,要改為目標(biāo)數(shù)據(jù)庫(kù)的用戶ggstrn02DECLARE T_Name VARCHAR(100),T_Ow ner VARCHAR(50),SQLVARCHAR
47、(500),T_Old VARCHAR(50),T_New VARCHAR(50)SET T_Old='ggstrn01'SET T_New='ggstrn02'DECLARE t_owner CURSOR FORSELECT NAME,User_NAME(uid) AS UserName FROM SYSOBJECTS WHERE XTYPEo'S'TTKliBOPEN t_ow nerFETCH NEXT FROM t_ow ner INTO T_Name,T_Ow nerWHILE FETCH_STATUS=OBEGINIF UPPER(T
48、_Ow ner)=UPPER(T_Old)BEGINSET SQL=' sp_cha ngeobjectow ner '"+T_Old+'.'+T_Name+'",'"+T_New+"''-PRINT SQLEXEC(SQL)ENDFETCH NEXT FROM t_ow ner INTO T_Name,T_Ow nerENDCLOSE t_ow nerDEALLOCATE t_ow ner指定從備份點(diǎn)的LSN開始復(fù)制,在源庫(kù)查找 LSNSELECT bf1.physical_device_
49、 name, bs1.positi on, bs1.type, bs1ast_ls n, backup_start_date, bs1.backup_fi ni sh_dateFROM msdb.backupset bs1 inner join msdb.backupmediafamily bf1TTKliBinner joinmsdb.backupmediafamily bf1on bf1.media_set_id = bs1.media_set_idWHERE bs1.database_ name = 'db01'AND bs1.type = 'D'ORDE
50、R BY bs1.backup_start_date DESCphysical_device_ namepositi on type last_ls nbackup_start_datebackup_fi ni sh_dateC:Program FilesMicrosoft SQL ServerMSSQLBACKUPdb01backup 1 D50000000390000012010-05-05 19:51:46.0002010-05-05 19:51:46.000(1 row(s) affected)select coun t(*) from db01.ggstr n01.emp;101(1
51、 row(s) affected)select coun t(*) from db02.ggstr n0 2.emp;1(1 row(s) affected)因?yàn)槭菑脑磶?kù)備份還原過(guò)來(lái)的數(shù)據(jù),表明源庫(kù)在備份后又做了100條數(shù)據(jù)的(2? Smfc h Databa 馳com+51"TIH暉插入。通過(guò)提取進(jìn)程Extract ,讓提取進(jìn)程從備份后的LSN開始提取數(shù)據(jù)GGSCI (GGSEDU50) 4> stop extract ext_mssSending STOP request to EXTRACT EXT_MSS .Request processed.GGSCI (GGSEDU
52、50) 6> alter extract ext_mss, lsn 5000000039000001EXTRACT altered.GGSCI (GGSEDU50) 7> start extract ext_mssSending START request to MANAGER ('GGMGRSQLSERVER') .GGSCI (GGSEDU50) 9> info ext_mss, detailEXTRACT EXT_MSS Last Started 2010-05-06 02:38 Status RUNNINGCheckpoi nt Lag 00:00:0
53、0 (updated 00:00:01 ago)VAM Read Checkpoi nt 2010-05-05 22:34:50.450000 LSN: 0x00000005:0000018b:0069Target Extract Trails:Remote Trail NameSeqnoRBA Max MB./dirdat/et11161350Extract SourceBegi nEndNot Available* In itialized * 2010-05-05 22:34Not Available* In itialized * First RecordNot Available20
54、10-05-06 00:11 2010-05-06 00:11re h DxnTTKliBNot AvailableNot Available2010-05-06 00:11 2010-05-06 00:11In itialized * 2010-05-06 00:11Curre nt directory C:gg-sqlReport fileC:gg-sqldirrptEXT_MSS.rptParameter fileC:gg-sqldirprmEXT_MSS.prmCheckpo int fileC:gg-sqldirchkEXT_MSS.cpeProcess fileC:gg-sqldirpcsEXT_MSS.pceError logC
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB51T 1748-2014 肉兔同期發(fā)情技術(shù)規(guī)程
- DB51T 1560-2013 氯吡脲含量分析方法
- DB51T 682-2016 電梯安裝施工方案編寫規(guī)范
- 空壓機(jī)切割機(jī)項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 新建農(nóng)用車黑漆件項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 年產(chǎn)xxxpvc壓延膜項(xiàng)目可行性報(bào)告
- 上糊機(jī)生產(chǎn)加工項(xiàng)目可行性研究報(bào)告
- 新建儲(chǔ)運(yùn)容器項(xiàng)目可行性研究報(bào)告
- 2024-2030年機(jī)床罩公司技術(shù)改造及擴(kuò)產(chǎn)項(xiàng)目可行性研究報(bào)告
- 2024-2030年新版中國(guó)液化氣加汽機(jī)項(xiàng)目可行性研究報(bào)告
- (精華版)國(guó)家開放大學(xué)電大《成本會(huì)計(jì)》機(jī)考終結(jié)性5套真題題庫(kù)及答案6
- 滁州鑫龍化工有限公司新建30000噸-年危險(xiǎn)廢物綜合利用項(xiàng)目環(huán)境影響報(bào)告書
- 不同品系種豬的性能比較
- 人工鼻的護(hù)理
- GB/T 16552-2010珠寶玉石名稱
- 中國(guó)合唱歌曲精選100首
- GB/T 12668.2-2002調(diào)速電氣傳動(dòng)系統(tǒng)第2部分:一般要求低壓交流變頻電氣傳動(dòng)系統(tǒng)額定值的規(guī)定
- 2023年試驗(yàn)員試題及答案
- 新外研版高二英語(yǔ)選擇性必修二unit6 PlanB life on Mars 課件
- 靜物攝影課件
- 口腔黏膜-2010唇舌疾病
評(píng)論
0/150
提交評(píng)論