基于Oracle ADG通过dblink创建物化视图同步数据到目标库

基于Oracle ADG通过dblink创建物化视图同步数据到目标库

环境说明:源端环境Oracle ADG一主一备,版本11.2.0.4,目标端版本11.2.0.4,测试通过dblink方式在目标库创建物化视图同步ADG备库的数据。

PROD --> STANDBY -- > TARGET

第一步:在目标端创建dblink访问standby

复制代码
create database link dblink_scims
 connect to scims identified by  "scims" 
  using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10..0.0.0)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
 
SELECT * FROM USER_DB_LINKS ;

SELECT * FROM tscim@dblink_scims

第二步:在目标端创建物化视图,失败了,提示tscim表不带实体日志表,即物化视图日志表

第三步:尝试给tscim添加物化视图日志表

复制代码
SQL> CREATE MATERIALIZED VIEW LOG ON scims.TSCIM  WITH ROWID;

实体化视图日志已创建。

SQL>

第四步:再次在目标库创建物化视图,任然失败了,大概意思是不能从ADG备库创建

第五步:创建到ADG主库的dblink

复制代码
create database link dblink_scims_prod    
 connect to scims identified by  "scims" 
  using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.0)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
  
SELECT * FROM USER_DB_LINKS ;

SELECT * FROM tscim@dblink_scims_prod;

第六步:再次在目标端创建物化视图,成功创建。

第七步:目标端查询验证数据

附:可能存在的风险,物化视图会占用实际的物理空间,如果是比较大的表需要留意存储空间以及对性能的影响。

相关推荐
喝养乐多长不高3 分钟前
深入探讨redis:缓存
数据库·redis·缓存·缓存穿透·缓存击穿·缓存雪崩·缓存预热
大数据魔法师1 小时前
MongoDB(七) - MongoDB副本集安装与配置
数据库·mongodb
朝九晚五ฺ2 小时前
【MySQL基础】库的操作:创建、删除与管理数据库
数据库·sql·mysql
ephemerals__2 小时前
【Linux】基础文件IO
linux·运维·数据库
小哈里2 小时前
【DBA】MySQL经典250题,改自OCP英文题库中文版(2025完整版)
数据库·mysql·dba·开闭原则·ocp
英英_2 小时前
mysql分布式教程
数据库·分布式·mysql
珹洺2 小时前
数据库系统概论(十五)详细讲解数据库视图
android·java·数据库·sql
敲键盘的小夜猫3 小时前
Retrievers检索器+RAG文档助手项目实战
java·数据库·算法
✿ ༺ ོIT技术༻3 小时前
MySQL:视图+用户管理+访问+连接池原理
数据库·mysql
菜菜小蒙3 小时前
【MySQL】视图与用户管理
数据库·mysql