国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

通過OGG實現異構數據庫遷移(ORACLE TO MYSQL)

IT那活兒 / 1728人閱讀
通過OGG實現異構數據庫遷移(ORACLE TO MYSQL)

點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!


環境介紹

1.1 遷移背景

本次測試單張表的ogg異構遷移,通過ogg將oracle中的1張測試表同步到mysql里,需要注意oracle遷移mysql的場景下不支持ddl語句同步,因此表結構遷移完成后到數據庫切換前盡量不要再修改表結構。

1.2 主機信息

類別
源端
目標端
主機名
orcl
master1
數據庫類型
單實例
單實例
數據庫版本
oracle 19.3.0.0
mysql-5.7.25
主機IP地址
192.168.10.128
192.168.10.180
OGG版本
GoldenGate 21.3.0.0.0 for Oracle
GoldenGate 21.3.0.0.0 for MySQL-compatible


在Oracle端安裝OGG for Oracle

2.1 下載ogg安裝包

下載網址:https://www.oracle.com/middleware/technologies/goldengate-downloads.html
下載Oracle GoldenGate 21.3.0.0.0 for Oracle on Linux x86-64

2.2 安裝軟件

1)以Oracle用戶登錄:修改環境變量
su - oracle
$vi .bash_pfofile

export OGG_HOME=/ogg/oinstall
export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64:$JAVA_HOME/jre/lib/amd64/server:$JAVA_HOME/jre/lib/amd64/libjsig.so:$JAVA_HOME/jre/lib/amd64/server/libjvm.so:$OGG_HOME/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/usr/lib
export PATH=$OGG_HOME:$PATH:$ORACLE_HOME/bin
2)創建OGG用戶及目錄
su - root
#useradd ogg -g oinstall
#passwd ogg
#mkdir /ogg
#chown -R oracle:oinstall /ogg/
切換到ogg用戶:
$unzip -d ~ 213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip
$cd fbo_ggs_Linux_x64_Oracle_shiphome/Disk1/response/
$vi oggcore.rsp
INSTALL_OPTION=ORA19C
SOFTWARE_LOCATION=/ogg/oinstall
靜默安裝:
./runInstaller -silent -nowait -responseFile /ogg/fbo_ggs_Linux_x64_Oracle_shiphome/Disk1/response/oggcore.rsp

cd $OGG_HOME
create subdirs

OGG源端配置

3.1 數據庫配置

查看目前是否打開了歸檔日志、附件日志,強日志:如果沒打開需要打開下。
SQL>select name,open_mode,force_logging,supplemental_log_data_min from v$database;
SQL>archive log list;
SQL>alter database force logging;
SQL>alter database add supplemental log data;

3.2 創建ogg所需用戶及表空間

cdb下的配置:
SQL>create tablespace ogg_data datafile /oradata/oggtbs01.dbf size 1024M autoextend on;
SQL>create user c##ogg identified by ogg default tablespace ogg_data;
SQL>grant dba ,connect, resource, unlimited tablespace to c##ogg;
SQL>exec dbms_goldengate_auth.grant_admin_privilege(c##ogg,*,TRUE);
PDB下的配置:
SQL>create tablespace ogg_data datafile
/oradata/ORCL2/D418DD8AF0E48322E0538289A8C07AB4/datafile/ogg.dbf size 1024M autoextend on;
SQL>create user ogg identified by ogg default tablespace ogg_data;
SQL>grant dba ,connect, resource, unlimited tablespace to ogg;
SQL>exec dbms_goldengate_auth.grant_admin_privilege(ogg,*,TRUE);
確保ogg用戶可以正常登錄pdb:sqlplus ogg/ogg@pdb19.

3.3 創建測試數據

SQL>create user test identified by test;
SQL>grant dba ,connect, resource, unlimited tablespace to test;
確保ogg用戶可以正常登錄pdb:sqlplus test/test@pdb19.
SQL>create table test_ogg_tab(id int,name varchar(20),primary key(id));

3.4 添加表級transdata

ggsci>dblogin userid ogg@pdb19,password ogg
ggsci>add schematrandata pdb19.test
ggsci>add trandata test.*
--配置檢查點:
edit param ./globals
oggschema ogg

3.5 配置進程

1)配置mgr進程

--配置進程:
PORT 7809
DYNAMICPORTLIST 7810-7899
AUTORESTART EXTRACT *, RETRIES 5, WAITMINUTES 3, RESETMINUTES 60
--啟動mgr進程:
GGSCI > start mgr
GGSCI > info all
$ netstat -ntpl |grep 7809

2)配置抽取進程

GGSCI > edit param ext_mq
extract ext_mq
DDL INCLUDE ALL
SETENV (ORACLE_HOME = "/u01/app/oracle/product/19.3.0/db")
userid c##ogg@orcl2, password ogg
exttrail /ogg/oinstall/dirdat/to
table PDB19.test.*;

GGSCI >add extract ext_mq, TRANLOG,BEGIN NOW
GGSCI >add exttrail /ogg/oinstall/dirdat/to, extract ext_mq
GGSCI >register extract ext_mq database container(PDB19)
注意:不可在pdb里注冊, 只能在cdb注冊,不然會報錯OGG-08217。

3)配置傳輸進程

GGSCI >edit param pump_mq
extract pump_mq
userid c##ogg@orcl2 , password ogg
rmthost 192.168.10.180,mgrport 7809
rmttrail /ogg/oinstall/dirdat/rt
table PDB19.test_.*;

GGSCI >add extract pump_mq, exttrailsource /ogg/oinstall/dirdat/to
GGSCI >add rmttrail /ogg/dirdat/rt, extract pump_mq, megabytes 100

4)異構mapping文件defgen生成

edit param tab1
dsdffile /ogg/oinstall/dirdef/ogg_test.ogg_test
userid test@PDB19, password test
table test.test_ogg_tab;
./defgen paramfile dirprm/tab1.prm


在MYSQL端安裝OGG for MYSQL

4.1 下載ogg安裝包

下載網址:https://www.oracle.com/middleware/technologies/goldengate-downloads.html
下載  Oracle GoldenGate 21.3.0.0.0 for MySQL-compatible Databases on Linux x86-64

4.2 安裝軟件

創建目的端ogg用戶:oggmq.

#useradd oggmq
#passwd oggmq
#unzip -d ~ ./213000_ggs_Linux_x64_MySQL_64bit.zip
#mkdir -p /ogg/oinstall

su - oggmq
tar -xvf ggs_Linux_x64_MySQL_64bit.tar -C /ogg/oinstall

cd $OGG_HOME
ggsci
create subdirs


OGG目標端配置

5.1 數據庫配置

create user ogg@% identified by ogg;
grant all on *.* to ogg@%;
create database ogg;
use ogg;
create table test_ogg_tab(id int,name varchar(20),primary key(id));

5.2 配置進程

1)配置mgr進程

edit param mgr
PORT 7809
--配置檢查點:
edit param ./GLOBALS
CHECKPOINTTABLE ogg.checkpoint
--將3.5.4生成的文件發送到本機。
--添加檢查點:
dblogin sourcedb ogg@127.0.0.1:3306 ,userid ogg, password ogg
add checkpointtable ogg.ggs_checkpoint

2)配置回放線程

ggsci>edit params r_tab1
replicat r_tab1
targetdb ogg@127.0.0.1:3306,userid ogg,password ogg
sourcedefs /ogg/oinstall/dirdef/ogg_test.ogg_test
HANDLECOLLISIONS
MAP test.test_ogg_tab,target ogg.test_ogg;

dblogin sourcedb ogg@127.0.0.1:3306 ,userid ogg, password ogg
add replicat r_tab1,exttrail /ogg/dirdat/rt,checkpointtable ogg.ggs_checkpoint

5.3 查看源端及目標端進程狀態

源端:
目標端:

5.4 驗證數據同步

--源端插入數據:
insert into test_ogg_tab values(1,d);
insert into test_ogg_tab values(2,b);
insert into test_ogg_tab values(3,ae);
commit;
--目標端查看:
select * from test_ogg_tab;
--再插入數據驗證:


本文作者:余家豪(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129155.html

相關文章

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<