请教:dataguard 同步两个数据库中的几个表的问题

时间:2021-01-18 15:30:02
项目中遇到这样一个问题:
我们的大系统有两个小系统,系统A使用数据库DatabaseA,系统B使用数据库DatabaseB。
系统B想查询DatabaseA中几个表的数据,但是单位领导不同意系统B直接访问DatabaseA,只好将这几个表的数据实时更新到DatabaseA中对应的表中。

问题是:DataGuard能实现这样的功能吗?如果把这几个表单独放到一个表空间中,能实现表空间的备份吗?
补充:单位领导不想用触发器实现,觉得这样不稳定。

2 个解决方案

#1


1 如果把这几个表单独放到一个表空间中,能实现表空间的备份吗?
  可以实现,把表空间文件传输过去,直接加载离线表空间,只要表没有特殊大字段Blob,Clob,其实有也一样,只是多了不确定因素

2 百万以下级别的小规模数据可以考虑job+dblink

3 用WebService做不是更好,服务器资源和数据库相比不是稀缺资源。

#2


表空间希望是实时更新过去,不用人为手动复制,这样DataGuard可以做到吗?
而且DatabaseB中还有一些DatabaseA中没有的表。

#1


1 如果把这几个表单独放到一个表空间中,能实现表空间的备份吗?
  可以实现,把表空间文件传输过去,直接加载离线表空间,只要表没有特殊大字段Blob,Clob,其实有也一样,只是多了不确定因素

2 百万以下级别的小规模数据可以考虑job+dblink

3 用WebService做不是更好,服务器资源和数据库相比不是稀缺资源。

#2


表空间希望是实时更新过去,不用人为手动复制,这样DataGuard可以做到吗?
而且DatabaseB中还有一些DatabaseA中没有的表。