程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> GG配置Oracle同步到SQLServer

GG配置Oracle同步到SQLServer

編輯:Oracle教程


GG配置Oracle同步到SQLServer

源端目標端准備一張測試用的表。 Oracle源端: drop table ggmgr.t1; create table ggmgr.t1( id int primary key, name varchar2(50), time date);
Sqlserver目標端: BEGIN TRANSACTION SET QUOTED_IDENTIFIER ON SET ARITHABORT ON SET NUMERIC_ROUNDABORT OFF SET CONCAT_NULL_YIELDS_NULL ON SET ANSI_NULLS ON SET ANSI_PADDING ON SET ANSI_WARNINGS ON COMMIT BEGIN TRANSACTION GO CREATE TABLE dbo.Table_1 ( id numeric(18, 0) NOT NULL, name nvarchar(40) NULL, time date NULL ) ON [PRIMARY] GO ALTER TABLE dbo.Table_1 ADD CONSTRAINT PK_Table_1 PRIMARY KEY CLUSTERED ( id ) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO ALTER TABLE dbo.Table_1 SET (LOCK_ESCALATION = TABLE) GO COMMIT

在線持續同步表

Oracle端(配置extract進程) dblogin userid ggmgr,password oracle add trandata test.n
edit param e_erp extract e_erp userid ggmgr,password oracle setenv(ORACLE_SID=orcl) exttrail ./dirdat/dd table ggmgr.t1;
添加extract進程 add extract e_erp,tranlog,begin now 創建本地trail文件(並不是物理上真的創建),這個e_erp要之前就按這個名稱添加了extract進程。 add exttrail ./dirdat/dd, extract e_erp


配置data pump進程 edit params d_erp extract d_erp userid ggmgr,password oracle rmthost 10.60.17.48,mgrport 7809 rmttrail D:\gg\dirdat\dd table ggmgr.t1;
add extract d_erp, exttrailsource /home/ora/gg/dirdat/dd add rmttrail D:\gg\dirdat\dd, extract d_erp


sqlserver端(配置replicat進程)
傳送defgen工具定義文件
在SQLServe目標端,配置globals文件,指定用某個checkpoint表 /ggsci edit params ./GLOBALS CHECKPOINTTABLE MASTER.DBO.GG_CHECKPOINT_TAB
globals文件必須在在$GGS_HOME目錄下,即軟件根目錄下,如果已經存在一個,可以先move走它。
為目標端配置checkpoint table dblogin sourcedb mssql(這個名稱,是我們定義在ODBC數據源的那個代表某給sqlserver服務的描述符) add checkpointtable master.dbo.gg_checkpoint_tab

配置replicat進程 EDIT PARAMS R_ERP replicat r_erp sourcedb mssql sourcedefs D:\gg\dirdef\defgen.def reperror default,discard discardfile ./dirrpt/r_erp.dsc,append,megabytes 50 map ggmgr.t1, target fwy.dbo.t1;

discardfile參數 推薦用這個參數,對於數據庫拒絕的數據,會反映到這個文件中。。
增加replicat進程 add replicat r_erp, exttrail D:\gg\dirdat\dd
然後用defgen工具,將表定義傳送到目標端
源端跑起來 start e_bom start d_bom 目標端 start replicat r_bom view report r_erp
如果想過濾某些列,什麼都不用做。例如源端有7個字段,目標端有6個,同名字段自動匹配,沒的會自動去掉。 但如果字段名有些一樣,有些不同呢? map ggmgr.t3, target fwy.dbo.t3, colmap ( usedefaults, --意味著字段名相同就用默認的復制 target_col = source_col); --目標表字段名是target_col,從源端的字段名是source_col的字段處抽取。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved