Windows下GoldenGate单机单向同步
一、配置Manager管理程的参数
GGSCI (John-PC) 2> info all
GGSCI (John-PC) 3> edit params mgr
提示找不到文件……,点击“是”
在mgr.prm中输入“port 7809”并保存
二、配置抽取进程
GGSCI (John-PC) > add extract ext1,tranlog, begin now
GGSCI (John-PC) > add exttrail F:\app\Administrator\ogg\dirdat\st, extract ext1
这个句子表示通过ext1进程把数据抽取到本地的F:\app\Administrator\ogg\dirdat\st文件中。st代表scott,表示本实验是要把scott.test_table中的数据同步到haishu.test_table中。当然也可以起其他名字,不过最好起的有意义一点。
exttrail表示本地。若要抽取到远程服务中,应使用add rmttrail语句。
编辑抽取进程ext1参数
GGSCI (John-PC) 7> edit params ext1
在弹出框中选“是”
在ext1.prm中输入参数
extract ext1
userid ogg,password oracle
rmthost 127.0.0.1,mgrport 7809
rmttrail F:\app\Administrator\ogg\dirdat\sc
dynamicresolution
table scott.test_table;
因为这个实验是本机上的单向同步,所以远程IP地址即为本机地址127.0.0.1,当然也可以写为实际的IP地址147.132.68.164
注意,最后一定要以分号结束。
编辑完后保存并退出。
三、添加checkpoint表
复制进程需要用到checkpoint表。
GGSCI (John-PC) 10>edit params ./GLOBAL
这里./表示当前目录,即F:/app/Administrator/ogg
在弹出框中选“是”。在GLOBAL文件中加入如下内容并保存
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
添加checkpoint表
GGSCI (John-PC) 11> add checkpointtable ogg.checkpoint
四、配置复制进程
GGSCI (John-PC) > add replicat rep1,exttrail F:\app\Administrator\ogg\dirdat\st, checkpointtable ogg.checkpoint
这个句子表示从本机的F:\app\Administrator\ogg\dirdat\st中读取数据,并通过rep1进程把这些数据复制到数据库中。ogg.checkpoint是rep1的容器表。
编辑rep1进程参数
GGSCI (John-PC) > edit params rep1
在弹出的提示框中选“是”
在rep1.prm中输入如下内容
replicat rep1
userid ogg,password oracle
assumetargetdefs
discardfile F:\app\Administrator\ogg\dirdat\rep1_discard.txt,append
map scott.test_table, target haishu.test_table
RESOLVECONFLICT (UPDATEROWEXISTS, (DEFAULT, OVERWRITE))
RESOLVECONFLICT (INSERTROWEXISTS, (DEFAULT, OVERWRITE))
RESOLVECONFLICT (DELETEROWEXISTS, (DEFAULT, OVERWRITE))
RESOLVECONFLICT (UPDATEROWMISSING, (DEFAULT, IGNORE))
RESOLVECONFLICT (DELETEROWMISSING, (DEFAULT, IGNORE));
保存并退出。
五、测试同步结果
1 用sys用户登录数据库sqlplus / as sysdba
解锁scott用户
创建haishu用户并授予grant和connect权限
sys用户下创建scott.test_table表和haishu.scott表
SQL> create table scott.test_table(id varchar(10) primary key);
SQL> create table haishu.test_table(id varchar(10) primary key);
2 启动OGG的管理进程、抽取进程和复制进程
进程状态为running表示正常启动;若为abended或stop表示出错。可用“view report 进程名称”来查看错误信息,比如“view report ext1”。
3 向scott方案中插入一条数据并从haishu方案中检验
上图中第一次没有检索出数据,第二次才检索出数据。这是因为GoldenGate不是实时的,同步过程会有一定时间(比如一两秒)的延迟。
4 从scott方案中删除数据并从haishu方案中检验
上述实验结果说明成功实现把scott.test_table中的数据同步到haishu.test_table中。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29485627/viewspace-1759109/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29485627/viewspace-1759109/