Goldengate 配置oracle to mysql

联系:手机/微信(+86 17813235971) QQ(107644445)

标题:Goldengate 配置oracle to mysql

作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

以前oracle to mysql试验总是有乱码问题不能解决,后来和同事交流中,他说oracle使用ogg的11g版本,mysql使用ogg的10g版本可以解决乱码问题,开始我还是怀疑,因为想新的版本都不行,难道老版本就可以解决这个问题吗?抱着试试看的态度,做了个试验,尽然成功了,把试验的相关情况记录下来
mysql参数配置(cat /etc/my.cnf):
[client]
default-character-set = gbk
[mysqld]
lower_case_table_names=1–表名不区分大小写(省的在repl进程中因为大小写的问题导致不能捕获数据)
character-set-server = gbk
表/列编码:均为gbk
Note:
1、因为mysql是target端,所以对于log-bin/binlog_format参数无要求
2、通过以上设置确保mysql的所有相关编码均为gbk
系统编码配置(cat /etc/sysconfig/i18n):
source:
LANG=”zh_CN.GBK”
SUPPORTED=”zh_CN.GBK:zh_CN:zh”
SYSFONT=”latarcyrheb-sun16″
target:
LANG=”zh_CN.GBK”
SYSFONT=”latarcyrheb-sun16″
Note:是的系统编码和mysql编码相同
OGG配置过程:
source端:

add extract ext-all,tranlog,begin now
ADD EXTTRAIL /opt/OGG/dirdat/extract/AL, EXTRACT ext-all
edit params ext-all
extract ext-all
SETENV (NLS_LANG =AMERICAN_AMERICA.ZHS16GBK)
userid is1ogg,password passw0rd
exttrail /opt/OGG/dirdat/extract/AL
discardfile /opt/OGG/discard/ext-all.txt, append, megabytes 100
DDL INCLUDE MAPPED OPTYPE alter OBJNAME ECP.TAB*
TABLE ecp.*;
add EXTRACT p-air, EXTTRAILSOURCE /opt/OGG/dirdat/extract/AL, BEGIN now
add rmttrail /opt/OGG/dirdat/rl extract p-air
edit params p-air
extract p-air
SETENV (NLS_LANG =AMERICAN_AMERICA.ZHS16GBK)
userid is1ogg,password passw0rd
RMTHOST 192.168.1.4,MGRPORT 7809,TCPBUFSIZE 100000,TCPFLUSHBYTES 300000
rmttrail /opt/OGG/dirdat/rl
discardfile /opt/OGG/discard/p-air.txt, append, megabytes 100
TABLE ecp.*;

target端:

add replicat repl, exttrail /opt/OGG/dirdat/rl,nodbcheckpoint
edit params repl
replicat repl
DBOPTIONS HOST 127.0.0.1, CONNECTIONPORT 3306
TARGETDB ecp,userid root,password xifenfei
assumetargetdefs
reperror default,discard
discardfile /tmp/mysql.dsc,append,megabytes 100
MAP ECP.TAB_UUM_DEPT, TARGET ecp.tab_uum_dept;
MAP ECP.TAB_UUM_DEPT_LEADER, TARGET ecp.tab_uum_dept_leader;

One thought on “Goldengate 配置oracle to mysql

  1. 我把source端的ogg中ETENV (NLS_LANG =AMERICAN_AMERICA.UTF8),mysql数据库的default-character-set = utf8也测试成功,说明只要oracle中捕获客户端、传递客户端与mysql中的应用客户端编码一致就可以排除乱码问题,而不用考虑数据库本身的编码和操作系统的编码

  2. mysql 的ogg 10g版本中,不能使用 dblogin sourcedb ecp@127.0.0.1:3306,userid root,password xifenfei登录mysql数据库,而在11g中可以

  3. 目标端的oracle数据库编码和mysql中需要同步的表编码一致不会出现乱码

  4. 你好,非常想知道 这些配置项都是什么意思。刚刚接触 goldengate 现在想实验一下 oracle到mysql 数据同步。 一直找不到相关的资料。

    1. 我的qq:107644445,或者邮箱:8chf@163.com,可以沟通,你有不明白的地方可以我们一起探讨

  5. 您好,在网上搜索oracletomysql 看到你的文章。刚开始接触想请教个问题。
    要实现oracle 到 mysql的数据 同步数据。 目前有GGforoacle已经安装,还要装GGformysql吗?

  6. 是的,需要

    您好,在网上搜索oracletomysql 看到你的文章。刚开始接触想请教个问题。
    要实现oracle 到 mysql的数据 同步数据。 目前有GGforoacle已经安装,还要装GGformysql吗?

  7. 大师,我在配置ORACLE到MYSQL时候也遇到和您一样的问题了, 但是我在用UTF8还是GBK都没办法把US7ASCII转成UTF8或者GBK的,详细描述在这里http://www.itpub.net/thread-1875482-1-1.html

发表评论

邮箱地址不会被公开。 必填项已用*标注

15 − 1 =