深圳网站建设培训,asp.net网站不能上传图片,产品推广计划书怎么写,看守所加强自身网站建设工作使用OracleLogminer同步Demo1Demo介绍-博客园使用Oracle Logminer 同步Demo1 Demo 介绍1.1 Demo 设想前面介绍了Oracle LogMiner 配置使用以及使用LogMiner 进行解析日志文件性能#xff0c;在这篇文章中将利用 LogMiner 进行数据同步#xff0c;实现从源目标数据库到目标数据…使用OracleLogminer同步Demo1Demo介绍-博客园使用Oracle Logminer 同步Demo1 Demo 介绍1.1 Demo 设想前面介绍了Oracle LogMiner 配置使用以及使用LogMiner 进行解析日志文件性能在这篇文章中将利用 LogMiner 进行数据同步实现从源目标数据库到目标数据库之间的数据同步。由于LogMiner 支持的版本是8.1 及以上所以进行数据同步的Oracle 数据库版本也必须是8.1及以上。当然在本文中介绍的是LogMiner进行数据同步例子也可以利用LogMiner进行数据审计、数据操作追踪等功能由于这些从操作原理来说是一致在本文不做讨论。1.2 框架图第 1 页 共 9 页 出自石山园主博客地址/shishanyuan1.3 流程图 配置阶段1、控制端指定源端、目标端数据库信息、LOGMINER 同步时间等配置信息; 获取源端同步数据2、控制台通过定时轮询的方式检测是否到达数据同步时间如果是则进行数据同步否则继续进行轮询3、源数据库 定时加载数据库归档日志文件到动态表v$logmnr_contents 中4、源数据库根据条件读取指定sql 语句 目标端数据入库5、源数据库执行sql 语句。2 代码分析2.1 目录及环境配置在该 Demo 项目中需要引入Oracle JDBC 驱动包具体项目分为四个类 第 2 页 共 9 页 出自石山园主博客地址/shishanyuan1. Start.java 程序入口方法2. SyncTask.java 数据同步Demo 核心生成字典文件和读取日志文件、目标数据库执行SQL 语句等3. DataBase.java 数据库操作基础类4. Constants.java 源数据库、目标数据库配置、字典文件和归档文件路径。2.2 代码分析2.2.1 Constants.java在该类中设置了数据同步开始SCN 号、源数据库配置、目标数据库配置以及字典文件/ 日志文件路径。需要注意的是在源数据库配置中有两个用户一个是调用 LogMiner 用户该用户需要拥有dbms_logmnr、dbms_logmnr_d 两个过程权限在该Demo 中该用为为sync 另外一个为 LogMiner 读取该用户操作SQL 语句在该Demo 中该用为为LOGMINER。package com.constants;/*** [Constants]|描述:Logminer配置参数* 作者: **** 日期: 2013-1-15 下午01:53:57* 修改历史:*/public class Constants {/** 上次数据同步最后SCN号 */public static String LAST_SCN 0;第 3 页 共 9 页 出自石山园主博客地址/shishanyuan/** 源数据库配置 */public static String DATABASE_DRIVERoracle.jdbc.driver.OracleDriver;public static StringSOURCE_DATABASE_URLjdbc:oracle:thin::1521:practice;public static String SOURCE_DATABASE_USERNAMEsync;public static String SOURCE_DATABASE_PASSWORDsync;public static String SOURCE_CLIENT_USERNAME LOGMINER;/** 目标数据库配置 */public static String SOURCE_TARGET_URLjdbc:oracle:thin::1521:target;public static String SOURCE_TARGET_USERNAMEtarget;public