基于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;

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

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

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

相关推荐
weelinking4 小时前
【产品】00_产品经理用Claude实现产品系列介绍
数据库·人工智能·sql·数据挖掘·github·产品经理
2301_803934615 小时前
Go语言如何做网络爬虫_Go语言爬虫开发教程【指南】
jvm·数据库·python
秋96 小时前
windows中安装redis
数据库·redis·缓存
Cosolar6 小时前
万字详解:RAG 向量索引算法与向量数据库架构及实战
数据库·人工智能·算法·数据库架构·milvus
想唱rap6 小时前
IO多路转接之poll
服务器·开发语言·数据库·c++
SeaTunnel6 小时前
AI 让 SeaTunnel 读源码和调试过时了吗?
大数据·数据库·人工智能·apache·seatunnel·数据同步
凯瑟琳.奥古斯特7 小时前
数据冗余与规范化的本质[数据库原理]
开发语言·数据库·职场和发展
_ku_ku_7 小时前
数据库系统原理 · SQL 数据定义、更新及数据库编程 · 自学总结
数据库·oracle
Mortalbreeze7 小时前
深度理解文件系统 ---- 从磁盘存储到内核存储
大数据·linux·数据库
2301_803934618 小时前
MySQL 字段类型选择规范指南
jvm·数据库·python