ogg安装
|
源端
|
目标端 | |
|
主机 IP 地址
|
10.8.98.247
|
10.8.98.248 |
|
操作系统类型
|
Linux
|
Linux
|
|
操作系统版本
|
Red Hat Enterprise Linux Server release 7.9
|
Red Hat Enterprise Linux Server release 7.9 |
|
GoldenGate 版本
|
19.1.0.0.4
|
19.1.0.0.4
|
|
GoldenGate 管理端口
|
7809
|
7809
|
|
GoldenGate 动态端口
|
7810-7820,7830
|
7810-7820,7830
|
mkdir /data001/ogg/ggs -p
mkdir /data001/soft -p chown oracle:oinstall /data001/ -R chmod -R 775 /data001/ogg/ggs su - oracle unzip -d /data001/ogg/ggs /data001/soft/191004_fbo_ggs_Linux_x64_shiphome.zip
su - oracle cp ~/.bash_profile ~/.bash_profile_19c.20241108 vi ~/.bash_profile export OGG_HOME=/data001/ogg/ggs PATH=$ORACLE_HOME/bin:$OGG_HOME:$PATH; export PATH source ~/.bash_profile
[oracle@server247 Disk1]$ pwd
/data001/ogg/ggs/fbo_ggs_Linux_x64_shiphome/Disk1





3、安装ogg(静默安装)
[oracle@server247 response]$ cat oggcore.rsp | grep -v "^#" | grep -v ^$
oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v19_1_0
INSTALL_OPTION=ORA19c
SOFTWARE_LOCATION=/data001/ogg/ggs
START_MANAGER=false
MANAGER_PORT=
DATABASE_LOCATION=
INVENTORY_LOCATION=
UNIX_GROUP_NAME=
[oracle@server247 response]$
[oracle@server247 response]$ pwd
/data001/ogg/ggs/fbo_ggs_Linux_x64_shiphome/Disk1/response
[oracle@server247 response]$ ls
oggcore.rsp
[oracle@server247 response]$ cd ..
[oracle@server247 Disk1]$ ls
install response runInstaller stage
[oracle@server247 Disk1]$ ./runInstaller -silent -responseFile /data001/ogg/ggs/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 177497 MB Passed
Checking swap space: must be greater than 150 MB. Actual 8183 MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2024-11-19_09-58-29AM. Please wait ...[oracle@server247 Disk1]$ [WARNING] [INS-75003] The specified directory /data001/ogg/ggs is not empty.
CAUSE: The directory specified /data001/ogg/ggs contains files.
ACTION: Clean up the specified directory or enter a new directory location.
You can find the log of this install session at:
/u01/oraInventory/logs/installActions2024-11-19_09-58-29AM.log
WARNING:OUI-10030:You have specified a non-empty directory to install this product. It is recommended to specify either an empty or a non-existent directory. You may, however, choose to ignore this message if the directory contains Operating System generated files or subdirectories like lost+found.
Do you want to proceed with installation in this Oracle Home?
Successfully Setup Software.
The installation of Oracle GoldenGate Core was successful.
Please check '/u01/oraInventory/logs/silentInstall2024-11-19_09-58-29AM.log' for more details.
[oracle@server247 Disk1]$
4、验证 GoldenGate 软件是否安装成功
[oracle@server247 ~]$ ggsci Oracle GoldenGate Command Interpreter for Oracle Version 19.1.0.0.4 OGGCORE_19.1.0.0.0_PLATFORMS_191017.1054_FBO Linux, x64, 64bit (optimized), Oracle 19c on Oct 17 2019 21:16:29 Operating system character set identified as UTF-8. Copyright (C) 1995, 2019, Oracle and/or its affiliates. All rights reserved. GGSCI (server247) 1>
安装成功
5、初始化 GoldenGate 软件目录(图形界面安装这一步可以省略,已经创建了)
GGSCI (server247) 1> create subdirs Creating subdirectories under current directory /home/oracle Parameter file /data001/ogg/ggs/dirprm: already exists. Report file /data001/ogg/ggs/dirrpt: already exists. Checkpoint file /data001/ogg/ggs/dirchk: already exists. Process status files /data001/ogg/ggs/dirpcs: already exists. SQL script files /data001/ogg/ggs/dirsql: already exists. Database definitions files /data001/ogg/ggs/dirdef: already exists. Extract data files /data001/ogg/ggs/dirdat: already exists. Temporary files /data001/ogg/ggs/dirtmp: already exists. Credential store files /data001/ogg/ggs/dircrd: already exists. Masterkey wallet files /data001/ogg/ggs/dirwlt: already exists. Dump files /data001/ogg/ggs/dirdmp: already exists. GGSCI (server247) 2>
6、在源端数据库创建 GoldenGate 连接用户并授权
创建 ogg 用户的独立表空间 create tablespace tbs_ogg datafile '/u01/app/oracle/oradata/PROD247/tbs_ogg.dbf' size 5G; create temporary tablespace tbs_ogg_temp tempfile '/u01/app/oracle/oradata/PROD247/temp_ogg.dbf' size 2G; 创建 ogg 用户及授权 SQL> create user ogg identified by "Passw0rd123456" default tablespace tbs_ogg temporary tablespace tbs_ogg_temp; SQL> grant connect,resource,dba to ogg; SQL> alter system set enable_goldengate_replication=true scope=both; 这是后面配置抽取进程,启动报错补回的!
目标端类似
创建 ogg 用户的独立表空间
create tablespace tbs_ogg datafile '/u01/app/oracle/oradata/PROD248/tbs_ogg.dbf' size 5G;
create temporary tablespace tbs_ogg_temp tempfile '/u01/app/oracle/oradata/PROD248/temp_ogg.dbf' size 2G;
创建 ogg 用户及授权
SQL> create user ogg identified by "Passw0rd123456" default tablespace tbs_ogg temporary tablespace tbs_ogg_temp;
SQL> grant connect,resource,dba to ogg;
SQL> alter system set enable_goldengate_replication=true scope=both;
7、开启数据库最小附加日志
数据库必须是归档模式,否则需要打开归档模式。 打开附加日志并切换日志(保证 Online redo log 和 Archive log 一致) SQL> alter database force logging; SQL>alter database add supplemental log data ; SQL>alter database add supplemental log data (primary key, unique,foreign key) columns; SQL>alter system switch logfile;
8、源端创建一个测试表
create user test001 identified by test001 default tablespace users;
grant dba to test001;
conn test001;
create table test001(id int primary key, name varchar2(10));
目标端也需要创建
create user test001 identified by test001 default tablespace users; grant dba to test001; conn test001; create table test001(id int primary key, name varchar2(10));
9、开启需要同步的数据表的附加日志
[oracle@server247 response]$ ggsci Oracle GoldenGate Command Interpreter for Oracle Version 19.1.0.0.4 OGGCORE_19.1.0.0.0_PLATFORMS_191017.1054_FBO Linux, x64, 64bit (optimized), Oracle 19c on Oct 17 2019 21:16:29 Operating system character set identified as UTF-8. Copyright (C) 1995, 2019, Oracle and/or its affiliates. All rights reserved. GGSCI (server247) 1> dblogin userid ogg password Passw0rd123456 Successfully logged into database.
GGSCI (server247 as ogg@prod247) 85> add trandata test001.test001
2024-11-14 11:38:07 INFO OGG-15132 Logging of supplemental redo data enabled for table TEST001.TEST001.
2024-11-14 11:38:07 INFO OGG-15133 TRANDATA for scheduling columns has been added on table TEST001.TEST001.
2024-11-14 11:38:07 INFO OGG-15135 TRANDATA for instantiation CSN has been added on table TEST001.TEST001.
2024-11-14 11:38:08 INFO OGG-10471 ***** Oracle Goldengate support information on table TEST001.TEST001 *****
Oracle Goldengate support native capture on table TEST001.TEST001.
Oracle Goldengate marked following column as key columns on table TEST001.TEST001: ID.
10、源端配置 GLOBALS 参数(目标端同样需要配置)
GGSCI (server247 as ogg@prod247) 3> edit param ./GLOBALS GGSCI (server247 as ogg@prod247) 4> GGSCI (server247 as ogg@prod247) 4> view param ./GLOBALS GGSCHEMA ogg
目标端
GGSCI (server248) 2> dblogin userid ogg password Passw0rd123456
Successfully logged into database.
GGSCI (server248 as ogg@prod248) 3> edit param ./GLOBALS
GGSCI (server248 as ogg@prod248) 4>
GGSCI (server248 as ogg@prod248) 4>
GGSCI (server248 as ogg@prod248) 4>
GGSCI (server248 as ogg@prod248) 4> view param ./GLOBALS
GGSCHEMA ogg
11、源端配置 MANAGER 管理进程(目标端同样)
GGSCI (server247 as ogg@prod247) 7> edit param mgr GGSCI (server247 as ogg@prod247) 8> view param mgr PORT 7809 DYNAMICPORTLIST 7810-7820, 7830 AUTOSTART EXTRACT *
AUTORESTART EXTRACT *, RETRIES 4, WAITMINUTES 2 STARTUPVALIDATIONDELAY 5 PURGEOLDEXTRACTS /data001/ogg/ggs/dirdat/*, USECHECKPOINTS, minkeepdays 9 LAGREPORTHOURS 1 LAGINFOMINUTES 30 LAGCRITICALMINUTES 45 ACCESSRULE, PROG *, IPADDR 10.8.*.*, ALLOW GGSCI (server247 as ogg@prod247) 9>
12、源端配置 EXTRACT 抽取进程
GGSCI (server247 as ogg@prod247) 9> add extract e_test01,integrated tranlog,begin now EXTRACT (Integrated) added. GGSCI (server247 as ogg@prod247) 11> add exttrail /data001/ogg/ggs/dirdat/e1,extract e_test01
EXTTRAIL added.
GGSCI (server247 as ogg@prod247) 12> register extract e_test01 database
2024-11-11 11:32:06 INFO OGG-02003 Extract EXTRACT1 successfully registered with database at SCN 2824246.
#######################################################################
register EXTRACT E_TEST01 database SCN 2237377
add extract e_test01 integrated tranlog scn 2237377
add exttrail /data001/ogg/ggs/dirdat/e1,extract e_test01
GGSCI (server247 as ogg@prod247) 14> edit param e_test01 GGSCI (server247 as ogg@prod247) 17> view param e_test01 EXTRACT e_test01 SETENV (ORACLE_SID = "prod247") SETENV (ORACLE_HOME= /u01/app/oracle/product/19c/db_1) SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8") USERID ogg, PASSWORD Passw0rd123456 -- Log all scheduling columns if using integrated Replicat LOGALLSUPCOLS DBOPTIONS ALLOWUNUSEDCOLUMN WARNLONGTRANS 2h, CHECKINTERVAL 300s FETCHOPTIONS NOUSESNAPSHOT REPORTCOUNT EVERY 10 MINUTES, RATE exttrail /data001/ogg/ggs/dirdat/e1,FORMAT RELEASE 19.1 discardfile /data001/ogg/ggs/dirrpt/e_test01.dsc, append, megabytes 500 table test001.test001; GGSCI (server247 as ogg@prod247) 18>
13、源端配置 EXTRACT pump 投递进程
GGSCI (server247 as ogg@prod247) 18> add extract p_test01, exttrailsource /data001/ogg/ggs/dirdat/e1,begin now EXTRACT added. GGSCI (server247 as ogg@prod247) 19> add rmttrail /data001/ogg/ggs/dirdat/r1,extract p_test01 RMTTRAIL added. GGSCI (server247 as ogg@prod247) 20>
GGSCI (server247 as ogg@prod247) 23> edit param p_test01
GGSCI (server247 as ogg@prod247) 24> view param p_test01
EXTRACT p_test01
SETENV (ORACLE_SID = "prod247")
SETENV (ORACLE_HOME= /u01/app/oracle/product/19c/db_1/)
SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8")
RMTHOST 10.8.98.248, MGRPORT 7809, compress
RMTTRAIL /data001/ogg/ggs/r1,FORMAT RELEASE 19.1
table test001.test001;
GGSCI (server247 as ogg@prod247) 25>
GGSCI (server247) 3> start *
Sending START request to MANAGER ...
EXTRACT EXTRACT1 starting
Sending START request to MANAGER ...
EXTRACT PUMPE1 starting
GGSCI (server247) 4> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING EXTRACT1 00:00:00 00:00:04
EXTRACT RUNNING PUMPE1 00:00:00 00:00:05
14、目标端配置 REPLICAT 复制进程
如果还没有 checkpoint table,则需要先创建,主要是用于 REPLICAT 复制进程
GGSCI (server248) 3> dblogin USERID ogg, PASSWORD Passw0rd123456
Successfully logged into database.
GGSCI (server248 as ogg@prod248) 6> add checkpointtable ogg.checkpoint
ADD REPLICAT r_test01,exttrail /data001/ogg/ggs/dirdat/r1,checkpointtable ogg.checkpoint
GGSCI (server248 as ogg@prod248) 9> view param r1
REPLICAT r_test01
SETENV (ORACLE_SID = "prod248")
SETENV (ORACLE_HOME= /u01/app/oracle/product/19c/db_1)
SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8")
USERID ogg, PASSWORD Passw0rd123456
--handlecollisions
assumetargetdefs
allownoopupdates
gettruncates
discardfile /data001/ogg/ggs/dirrpt/r1.dsc,append, megabytes 500
DBOPTIONS DEFERREFCONST
REPLACEBADCHAR SPACE
--exttrail /data001/ogg/ggs/dirdat/r1
map test001.test001,target test001.test001;
15、主机端插入数据,验证目标端
SQL> select * from test001; no rows selected SQL> insert into test001 values(1,'haifeng'); 1 row created. SQL> commit; Commit complete. SQL> insert into test001 values(2,'ttt'); 1 row created. SQL> commit; Commit complete. SQL>
目标端
SQL> select * from test001;
ID NAME
---------- ----------
1 haifeng
2 ttt

浙公网安备 33010602011771号