10g streams--01 帮助文档.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用Oracle 流技术实现数据复制 Ashish Ray Director of Product Management Database High Availability, Server Technologies 什么是 Oracle Streams? 一个信息共享的简单解决方案 它提供如下功能: 复制 消息队列 数据仓库的装载和简单的 ETL 数据库迁移 应用升级 事件管理和通告 Streams: 体系结构 Streams: 功能组件 Capture-捕获 低开销,低延迟的变更捕获 数据库的变更被写入在线的redo log 当变更被写入数据库log后,Oracle Streams 提取这些变化 Redo or 归档 log 文件 能在本地或 or Downstream 中捕获 变更被格式化成逻辑变更记录(LCR) ,一个变更的表示方式 自动重启(实例重启或者RAC实例发生错误保护) 自动的流控制 逻辑变更记录 (LCR) 数据库变更 = LCR DML 行变更 = LCR 对象的名字,属主,DML的类型,SCN,… 老值, 新值 可选的属性: 用户名,会话,线索,… DDL 对象的名字,属主,DML的类型,SCN,… DDL 文本 可选的属性: 用户名,会话,线索,… LOB 和 LONG 字段 每个 LOB 或者 LONG 字段column生成多个 LCRs 大数据分段 Staging-暂存 Streams 发布捕获事件到内存中的暂存区域 暂存区是用类型的队列实现 Streams 捕获使用缓存的 ANYDATA 类型的队列 SGA中的Streams缓存池 订阅者:另外一个暂存区或Streams进程 消息一直保留在暂存区直到被所以的订阅者都使用 在暂存区之间的传播通过传播任务定期进行 LCRs 从本地的数据库通过队列被传播到目标数据库的队列里 Apply-应用 缺省的应用引擎将间接地应用在LCR里的DML或者DDL 应用到本地的Oracle表 通过数据库链接应用到非Oracle表 自动的带有选项的冲突检测 没有解决的冲突放在错误队列中 事务可以从错误队列中重新应用或者删除 最大地并发使用并行应用 Streams 进程的体系结构 Streams 捕获和应用: 复制配置 Downstream 的捕获 使用本地客户化的Streams 捕获 基于规则的配置 消费者预定发布的事件 规则使用SQL WHERE 子句表达 dbms_rule_adm.create_rule( rule_name=‘scott.rule1, condition=:dml.get_object_owner() = SCOTT AND :dml.get_object_name()=EMP); 规则集控制捕获、暂存的应用的行为 包含 排除 动态规则维护 裁剪的复制API DBMS_STREAMS_ADM.MAINTAIN_* {Tables | Schemas | Global | TTS} DBMS_STREAMS_ADM.ADD_*_RULES {Table | Schema | Global |Subset} 10.2: 简单的配置 Schema 复制 BEGIN dbms_streams_adm.MAINTAIN_SCHEMAS( SCHEMA_NAMES = HR,SCOTT, SOURCE_DIRECTORY_OBJECT = null, DESTINATION_DIRECTORY_OBJECT = null, SOURCE_DATABASE = NULL, DESTINATION_DATABASE = ‘TARGET_global_name, PERFORM_ACTIONS = TRUE, BI_DIRECTIONAL = FALSE, INSTANTIATION = DBMS_STREAMS_ADM.INSTANTIATION_SCHEMA_NETWORK ,SCRIPT_DIRECTORY_OBJECT = ‘SCRIPT_DIR’, SCRIPT_NAME = ‘generated_schemas_script.sql’, ); END; / 基于规则的转换 转换可以在如下几个步骤实施: 在事件进入暂存区时 当事件离开暂存区时 当事件在两个暂存区传播时 areas 声明转换 schema,表,字段改名 增加或删除字段 客户转换 用户提供的 PL/SQL 函数 声明转换 BEGIN DBMS_STREAMS_ADM.RENAME_SCHEMA( rule_name = STRMADMIN.HR51, from_

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档