讨论话题1:
想请教个问题oracle到pg有什么好的工具同步几十张表
讨论精选:
U1:如果您用的是 enterprise db (postgresql 商业版),他们是有自动化移植 工具的。如果是普通的 postgresql,就得看看有没有开源的工具了,若没有,恐怕要自己写程序导入了。
U2:实时同步可以做到吗
U2:或者准实时也行
U1:据说现在 goldengate 也支持 oracle到 pg 的同步,但我没用过
U3:navicat里面有同步的功能,不知道是不是可以直接同步到PG
U4:不能实时
U2:那个可以的,但是我需要实时,或者准实时也行
U5:应该是kettlel吧,ETL工具
U6:https://www.kettle.net.cn/
免费开源的、可视化的、功能强大的ETL工具
U6:阿里云 DTS 了解一下
U7:非Oracle往Oracle同步的话Ogg应该是可以的,有license的话support会想尽办法帮你搞。反向的话应该比较困难的吧。非专业回复。
U2:开源的吗Dts
U6:不开源 云服务
U2:亚马逊云上有同类产品吗
U6:也有
讨论话题2:
有没有大神知道怎么静默按照19c rac的呢?可以给下文档吗
讨论精选:
U1:在Centos7.6上安装Oracle19c RAC集群,文档巨详细值得收藏
https://mp.weixin.qq.com/s/Maj9jAJVrKDKMPDJl5-Hrw
U2:静默安装官方不支持的
U2:不过RAC on docker的官方方法里有步骤
U3:Oracle在容器里运行?
U4: Docker加RAC还不支持的吧
U4:Docker加Single是没问题的。
U2:是不支持,但里面步骤可以参考
讨论话题3:
dg gap只有一个归档时,查询select * from v$archive_gap;返回的是0行?查看应用的日志可以看到这个归档没有应用到。不应该返回一行吗
讨论精选:
U1:没错,系统就是设计的
U2:为啥?有一个就应该看到一个呀,不然会以为没有gap呢?我这是实验自己知道有一个
U1:简单地说,比较的是 varchived_log 的 sequence# 和 vlog_history的 sequence# 1 谁更大。若 v
U3:有人说,varchived_log 是归档的记录,vlog_history是归档应用的记录,不知道对不对。
U1:再做了一次,只有一个gap返回一行了哦
U1:对这两个视图没有深入研究,搞不懂
U1:只能工作中遇到要多检查下是否应用才行
U2:是否应用,是查看备库有无应用日志吗
U1:
代码语言:javascript复制 SQL> select * from v$archive_gap;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE# CON_ID
---------- ------------- -------------- ----------
1 144 145 1
2 144 145 1
SQL> ALTER DATABASE REGISTER LOGFILE '/home/oracle/thread_2_seq_144.598.1074613691';
Database altered.
SQL> select * from v$archive_gap;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE# CON_ID
---------- ------------- -------------- ----------
1 144 145 1
2 145 145 1
SQL> ALTER DATABASE REGISTER LOGFILE '/home/oracle/thread_1_seq_144.599.1074613691';
Database altered.
SQL> select * from v$archive_gap;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE# CON_ID
---------- ------------- -------------- ----------
1 144 145 1
2 145 145 1
SQL> ALTER DATABASE REGISTER LOGFILE '/home/oracle/thread_1_seq_145.601.1074613715';
Database altered.
SQL> select * from v$archive_gap;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE# CON_ID
---------- ------------- -------------- ----------
2 145 145 1
U1:第一次确实是只有一个gap时是看不到的,
代码语言:javascript复制 Thread Last Seq Received Last Seq Applied
---------- ----------------- ----------------
1 146 144
2 146 144
你看我现在还差145没有注册进去,他就没有应用到146,停留在144那里
U3:看一下v$arcihived_log的applied列是什么状态。然后看看alert日志里面mrp进程在应用145的时候是否有什么信息输出。
U2:你现在是 real time apply 吗?146的 日志,在备库 用 rman 的 list archivelog all 能显示出来吗?
U1:
我这个只是实验哈,我注册145进去了,就应用到最新的了
我试验的过程是:
先defer dest_2的传输。然后archive log current产生归档然后scp到备库,再删除归档。再enable dest_2的传输以此来产生gap做实验的
是实时应用的