这篇文章给大家分享的是有关OGG怎么安装的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
创新互联建站致力于网站建设,网站制作设计,营销网页按需规划网站,外贸网站制作,企业网站建设,小程序定制开发,网站SEO优化,网站设计制作案例丰富,是成都做网站公司和建站公司,欢迎咨询。
1.GoldenGate安装实施
2.1创建GoldenGate软件安装目录
在数据库服务器上创建文件系统:/u01/gg,作为GoldenGate的安装目录。
2.2 GoldenGate的管理用户
安装GoldenGate软件和维护GoldenGate软件时,可以使用系统上的oracle用户。GoldenGate安装目录的所有者必须是GoldenGate管理用户,本次实施过程中使用oracle用户作为GoldenGate管理用户,添加oracle用户的环境变量(在生产端和容灾端均要进行以下操作):
export GG_HOME=/u01/gg
export LD_LIBRARY_PATH=GGHOME:GGHOME:ORACLE_HOME/lib:/usr/bin:/lib
export PATH=GGHOME:GGHOME:PATH
2.3安装GoldenGate软件
切换到oracle用户,将GG软件的压缩包存放到GoldenGate安装目录下,即/u01/gg,将这个压缩包进行解压到GoldenGate安装目录下(在生产端和容灾端均要进行以下操作):
tar -zxvf *.gz
进入到GoldenGate安装目录,运行GGSCI命令以进入GG界面(在生产端和容灾端均要进行以下操作):
cd /u01/gg
./ggsci
在GGSCI界面下创建子目录(在生产端和容灾端均要进行以下操作):
GGSCI>create subdirs
至此,GoldenGate软件安装完毕。
2.4设置数据库归档模式
查看数据库的归档模式:
SQL>archive log list;
如果是非归档模式,需要开启归档模式:
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
2.5打开数据库的附加日志
打开附加日志并切换日志(保证Online redo log和Archive log一致)
alter database add supplemental log data ;
alter database add supplemental log data (primary key, unique,foreign key) columns;
alter system switch logfile;
2.6开启数据库强制日志模式
alter database force logging;
2.7创建GoldenGate管理用户
在生产端和容灾端均要进行以下操作:
--create tablespace
SQL>create tablespace ogg datafile '$ORACLE_BASE/oradata/test/ogg01.dbf' size 300M ;
-- create the user
SQL>create user ogg identified by ogg default tablespace ogg;
-- grant role privileges
SQL>grant resource, connect, dba to ogg;
2.8编辑GLOBALS参数文件
切换到GoldenGate安装目录下,执行命令:
cd /u01/gg
./ggsci
GGSCI>EDIT PARAMS ./GLOBALS
在文件中添加以下内容:
GGSCHEMA ogg --指定的进行DDL复制的数据库用户
利用默认的密钥,生成密文:
GGSCI>encrypt password ogg encryptkey default
Encrypted password: AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB
记录这个密文,将在以下进程参数的配置中使用。
2.9管理进程MGR参数配置
PORT 7839
DYNAMICPORTLIST 7840-7860
--AUTOSTART ER *
--AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 2
userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKY default
PURGEDDLHISTORY MINKEEPDAYS 11,MAXKEEPDAYS 14
PURGEMARKERHISTORY MINKEEPDAYS 11, MAXKEEPDAYS 14
2.10抽取进程EXTN参数配置
EXTRACT extn
setenv (NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252)
userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY default
REPORTCOUNT EVERY 1 MINUTES, RATE
DISCARDFILE ./dirrpt/discard_extn.dsc,APPEND,MEGABYTES 1024
DBOPTIONS ALLOWUNUSEDCOLUMN
WARNLONGTRANS 2h,CHECKINTERVAL 3m
EXTTRAIL ./dirdat/na
TRANLOGOPTIONS EXCLUDEUSER OGG
TRANLOGOPTIONS ALTARCHIVEDLOGFORMAT %t_%s_%r.dbf
FETCHOPTIONS NOUSESNAPSHOT
TRANLOGOPTIONS CONVERTUCS2CLOBS
TRANLOGOPTIONS altarchivelogdest primary instance test /oradata/arch
--TRANLOGOPTIONS RAWDEVICEOFFSET 0
DYNAMICRESOLUTION
DDL INCLUDE ALL
DDLOPTIONS addtrandata, NOCROSSRENAME, REPORT
table QQQ.*;
table CUI.*;
2.11 传输进程DPEN参数配置
EXTRACT dpen
RMTHOST 192.168.4.171 , MGRPORT 7839, compress
PASSTHRU
numfiles 50000
RMTTRAIL ./dirdat/na
TABLE QQQ.*;
TABLE CUI.*;
2.12建立OGG的DDL对象
$ cd /u01/gg
$ sqlplus "/ as sysdba"
SQL> @marker_setup.sql
Enter GoldenGate schema name:ogg
alter system set recyclebin=off;
SQL> @ddl_setup.sql
Enter GoldenGate schema name: ogg
SQL> @role_setup.sql
Grant this role to each user assigned to the Extract, Replicat, GGSCI, and Manager processes, by using the following SQL command:
SQL>GRANT GGS_GGSUSER_ROLE TO
where is the user assigned to the GoldenGate processes.
注意这里的提示:需要手工将这个GGS_GGSUSER_ROLE指定给extract所使用的数据库用户(即参数文件里面通过userid指定的用户),可以到sqlplus下执行类似的sql:
SQL>GRANT GGS_GGSUSER_ROLE TO ogg;
注:这里的ogg是extract使用的用户。如果你有多个extract,使用不同的数据库用户,则需要重述以上过程全部赋予GGS_GGSUSER_ROLE权限。
运行以下脚本,使触发器生效:
SQL> @ ddl_enable.sql
注:在生产端开启抽取前,先禁用DDL捕获触发器,调用ddl_disable.sql。
2.13 数据初始化
在初始化过程中,源数据库不需要停机,初始化过程分为三个部分:
生产端开启抽取进程;
生产端导出数据;
容灾端导入数据;
在生产端添加抽取进程、传输进程以及相应的队列文件,执行命令如下:
//创建进程 EXTN
GGSCI>add extract extn,tranlog,begin now
GGSCI>add exttrail ./dirdat/na,extract extn,megabytes 500
//创建进程 DPEN
GGSCI>add extract dpen,exttrailsource ./dirdat/na
GGSCI>add rmttrail ./dirdat/na,extract dpen,megabytes 500
在生产端启动管理进程:
GGSCI> start mgr
启用DDL 捕获trigger:
$ cd /u01/gg
$ sqlplus “/as sysdba”
SQL> @ddl_enable.sql
在生产端启动抽取进程:
GGSCI> start EXTN
在数据库中,获取当前的SCN号,并且记录这个SCN号:
SQL>select to_char(dbms_flashback.get_system_change_number) from dual;
603809
在数据库中,创建数据泵所需目录并赋予权限:
SQL>CREATE OR REPLACE DIRECTORY DATA_PUMP AS '/u01';
SQL>grant read ,write on DIRECTORY DATA_PUMP to ogg;
在生产端利用数据泵导出数据:
expdp ogg/ogg schemas='QQQ' directory=DATA_PUMP dumpfile=QQQ_bak_%U flashback_scn=123456789 logfile=expdp_QQQ.log filesize=4096m
expdp ogg/ogg schemas='CUI' directory=DATA_PUMP dumpfile=CUI_bak_%U flashback_scn=123456789 logfile=expdp_ CUI.log filesize=4096m
expdp ogg/ogg schemas='test1' directory=DATA_PUMP dumpfile=test1_bak_%U flashback_scn=603809 logfile=expdp_QQQ.log filesize=4096m
把导出的文件传输到容灾端,利用数据泵将数据导入:
Impdp ogg/ogg DIRECTORY=DATA_PUMP DUMPFILE=QQQ_bak_%U logfile=impdp_ QQQ.log
Impdp ogg/ogg DIRECTORY=DATA_PUMP DUMPFILE=CUI_bak_%U logfile=impdp_CUI.log
2.14 容灾端管理进程MGR参数配置
PORT 7839
DYNAMICPORTLIST 7840-7860
--AUTOSTART ER *
--AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 2
userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY default
2.15编辑GLOBALS参数文件
切换到GoldenGate安装目录下,执行命令:
cd /u01/gg
./ggsci
ggsci>EDIT PARAMS ./GLOBALS
在文件中添加以下内容:
GGSCHEMA ogg --指定的进行DDL复制的数据库用户
2.16 容灾端复制进程REPN参数配置
REPLICAT repn
setenv (NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252)
userid ogg, password AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY default
SQLEXEC "ALTER SESSION SET CONSTRAINTS=DEFERRED"
REPORT AT 01:59
REPORTCOUNT EVERY 30 MINUTES, RATE
REPERROR DEFAULT, ABEND
assumetargetdefs
DISCARDFILE ./dirrpt/repna.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 02:30
ALLOWNOOPUPDATES
REPERROR (1403, discard)
DDL INCLUDE MAPPED
DDLOPTIONS REPORT
MAPEXCLUDE QQQ.T0417
MAP QQQ.*, TARGET QQQ.*;
MAP CUI.*, TARGET CUI.*;
2.17创建复制进程repn
执行以下命令创建复制进程repn:
GGSCI>add replicat repn, exttrail ./dirdat/na, nodbcheckpoint
2.18启动生产端传输进程和容灾端复制进程
GGSCI>start dpen
GGSCI>start REPLICAT repn aftercsn 123456789
2.19测试场景
(1)在生产端数据库上,创建一张表。
(2)在生产端数据库上,修改这个张表的数据。
(3)在生产端数据库上,删除这张表。
感谢各位的阅读!关于“OGG怎么安装”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!