refresh_mysql.pl角本的一个配置例子
Tools » http://www.anysql.net/tools/oracle_mysql_replication_demo.html 2007-03-14在Oracle中创建表和实体化视图日志:
CREATE TABLE T_OBJECTS AS SELECT * FROM DBA_OBJECTS WHERE ROWNUM < 1;
ALTER TABLE T_OBJECTS MODIFY OBJECT_ID NOT NULL;
ALTER TABLE T_OBJECTS ADD PRIMARY KEY (OBJECT_ID);
CREATE MATERIALIZED VIEW LOG ON T_OBJECTS WITH PRIMARY KEY, SEQUENCE;
在MySQL中创建测试表:
CREATE TABLE t_objects (
OBJECT_ID decimal(10,0) NOT NULL, OWNER varchar(30) ,
OBJECT_NAME varchar(128) , SUBOBJECT_NAME varchar(30) ,
DATA_OBJECT_ID decimal(10,0) , OBJECT_TYPE varchar(18) ,
CREATED datetime , LAST_DDL_TIME datetime ,
TIMESTAMP varchar(19) , STATUS varchar(7) ,
TEMPORARY varchar(1) , GENERATED varchar(1) ,
SECONDARY varchar(1) , PRIMARY KEY (OBJECT_ID)
);
创建一个配置文件(demo.conf):
# SOURCE # PKEY # MVIEW Log # TARGET
T_OBJECTS # OBJECT_ID # MLOG$_T_OBJECTS # T_OBJECGS
运行refresh_mysql.pl角本(我装的是ActivePerl):
perl refresh_mysql.pl -s Oracle用户名#口令#Oracle:连接串 -t MySQL用户名#口令#MySQL:数据库名:主机 -c demo.conf
然后你在Oracle端进行插入或更新或删除, 看看记录有没有被复制过去.


Recent Comments