- 浏览: 244649 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (232)
- 瞎扯两句 (8)
- 操作系统 (5)
- 工作笔记 (33)
- 设计模式 (1)
- java (57)
- Java IDE (7)
- hibernate (17)
- oracle (46)
- ms sql (2)
- spring (9)
- struts2 (0)
- javascript (16)
- java_code (2)
- java之集合 (2)
- java之线程 (4)
- java之IO (4)
- java之虚拟机 (6)
- java之异常 (0)
- EJB (4)
- XML (4)
- 数据结构-算法 (2)
- 架构设计 (5)
- 配置信息 (2)
- 阅读笔记 (6)
- IT专业英语 (1)
- PI (0)
- 单元测试 (1)
最新评论
Oracle数据快照技术在数据交换中的应用
摘要:该文介绍了ORACLE数据快照技术在数据交换中的应用,并且举例说明了如何应用数据快照来实现跨库数据间的同步。
关键词:ORACLE;SNAPSHOT The Snapshot Technology of Oracle in the Data Exchange Application
PAN Cheng-bin
(Touris College of Zhejiang,Hangzhou 311231,China)
Abstract: This paper describe the snapshot technology of oracle in the data exchange application,and illustrate how to apply snapshot to achieve inter-library data synchronization.
Key words: ORACLE; SNAPSHOT
ORACLE数据库的快照是包括一个查询结果的数据库对象,它包含有对一个本地或远程数据库上一个或多个表或视图的查询的结果。正因为快照是一个主表的查询子集,使用快照可以加快数据的查询速度;在保持不同数据库中的两个表的同步中,利用快照刷新,数据的更新性能也会有很大的改善。快照允许你在本地维护远程数据的副本,但这些副本是只读的。如果你想修改本地副本,必须用高级复制的功能。当你想从一个表或视图中抽取数据时, 你可以从快照中抽取。
1 快照的具体结构
快照的用途比较广泛,主要可以用于性能优化,数据抽取等方面,是Oracle数据仓库处理中的一个重要技术。限于快照技术的复杂性和本人能力的有限,具体内容请查询相关官方帮助文档。
快照技术提供给我们三种刷新机制,分别是:
1) Complete 完全刷新机制,即对表的所有数据进行刷新,如果表的数据量十分庞大的,此法会消耗相当的时间;
2) Fast 快速刷新,即只对数据增量进行刷新;
3) Force 强制刷新,首先判断是否能用快速刷新机制,如不行则用完全刷新机制。
建立快照的基本语法如下:
Create snapshot<具体快照名字>as
建立刷新机制语句如下:
Alter snapshot<具体快照名字>refresh<刷新方式>start with<第一次刷新时间>next<间隔时间表达式>
下面将对Complete和Fast两种刷新机制分别进行介绍
首先我们假定已创建了一个名testshot的快照,具体语句如下:
Create snapshot testshot as< select查询语句>
1.1 完全刷新快照
1)完全刷新快照的建立
Alter snapshot testshot refresh complete start with sysdate 1/720 next sysdate 1/2
上述语句的意思在快照建立的后的第2分钟,将进行第一次刷新,然后每隔12小时,快照自动进行刷新
2)如果想要进行手动刷新,既不受间隔时间的限制,具体语句如下
begin
dbms_refresh.refresh(‘testshot’,’c’)
end
1.2 快速刷新快照即增量刷新快照
如要创建快速快照,则先要的源端数据表上建立快照日志,具体流程如图1所示。
1)在源端数据表上建立快照日志
Create snapshot log on test
2)设定快照刷新时间
Alter snapshot testshot refresh fast start with sysdate next sydate 1/2
从上面的语句中我们可以到其实完全刷新和快速刷新的基本语句是一样,只是刷新机制有所不同,需要的注意的如果你想使用快速刷新方式,则源端主表不能是视图,因为快照日志不能建立在视图上。
如果在应用过程发现快照不能正常工作,我们可以通过查询表user_jobs,来获取相应的信息,其表结构如表1所示。
2 数据快照建立前的准备工作
上面我们基本介绍了快照语句的基本写法和刷新时间的设置,下面我们将介绍应用数据快照我们所要做的准备工作,首先我们需要在本地Oracle数据上建立一个数据库账号,并在其下建立远程数据库链接。
创建账号的语句如下:
Create user binbin identified by binbin default tablespace pan temporarytablespace temp;
Grant connect ,resource to binbin;
Grant create synonym to binbin;
Grant create snapshot to binbin;
Grant create database link to binbin;
上述语句的意思是创建账号binbin,密码为binbin,并赋予其相应的权限,具体含义请查询Oracle官方介绍
建立远程数据库链接,具体语句如下
Create database link <链接名>connectto<远程服务器用户名>identified by“密码” using “TNS配置的实例名“
下面我们将用上述基本语句创建一个名为 bintobin的数据库链接
Create database linke bintobin connect to sa identifiede by “sa” using“test”
创建好数据库链接,意味着我们可以访问远程数据库上的数据了,并可以具体到其中的一个具体表,下面就是一个访问远程数据库上user表的一个快照
Create snapshot testshot as select * from user@test
3 数据快照技术的具体应用
由于现在学校各个部门都建立有自己的应用系统,各个应用系统数据库的建立时间不一,其中的数据结构、数据类型各不相同,所使用的数据库软件也不尽相同,如何快速准确的实现这些数据之间的交互同步,是我一直在研究的课题。使用快照技术就可以很方便的解决现有的问题。
本文来源于 www.14edu.com(论文网) 原文链接:http://www.14edu.com/ligong/jisuanji/05203H122010.html
下面是我院应用快照技术实现各个子系统间数据读取的实例。图2是各个数据库的分布。
关于快照刷新间隔的方面,由于各应用系统数据的更新要求不一。像一卡通消费数据要求隔天就能查到前一天的数据,而有的数据只需要隔两天进行一次更新即可,所以各个快照的具体刷新方式需要根据具体要求进行相应的设置。该方案至实施以来,在网络情况得以保证的前提下,数据的读取工作基本得以正常进行。
4 结束语
Oracle提供的快照技术为我们提供了一个快速读取远程数据的方法。利用快照可以容易的实现不同数据库间的数据同步和复制问题,特别是在实现数据的增量复制问题。一般都采用增量复制的方法来实现数据的同步,特别是在原数据量很大的情况,可以避免因出错而难以实现数据同步的问题。
摘要:该文介绍了ORACLE数据快照技术在数据交换中的应用,并且举例说明了如何应用数据快照来实现跨库数据间的同步。
关键词:ORACLE;SNAPSHOT The Snapshot Technology of Oracle in the Data Exchange Application
PAN Cheng-bin
(Touris College of Zhejiang,Hangzhou 311231,China)
Abstract: This paper describe the snapshot technology of oracle in the data exchange application,and illustrate how to apply snapshot to achieve inter-library data synchronization.
Key words: ORACLE; SNAPSHOT
ORACLE数据库的快照是包括一个查询结果的数据库对象,它包含有对一个本地或远程数据库上一个或多个表或视图的查询的结果。正因为快照是一个主表的查询子集,使用快照可以加快数据的查询速度;在保持不同数据库中的两个表的同步中,利用快照刷新,数据的更新性能也会有很大的改善。快照允许你在本地维护远程数据的副本,但这些副本是只读的。如果你想修改本地副本,必须用高级复制的功能。当你想从一个表或视图中抽取数据时, 你可以从快照中抽取。
1 快照的具体结构
快照的用途比较广泛,主要可以用于性能优化,数据抽取等方面,是Oracle数据仓库处理中的一个重要技术。限于快照技术的复杂性和本人能力的有限,具体内容请查询相关官方帮助文档。
快照技术提供给我们三种刷新机制,分别是:
1) Complete 完全刷新机制,即对表的所有数据进行刷新,如果表的数据量十分庞大的,此法会消耗相当的时间;
2) Fast 快速刷新,即只对数据增量进行刷新;
3) Force 强制刷新,首先判断是否能用快速刷新机制,如不行则用完全刷新机制。
建立快照的基本语法如下:
Create snapshot<具体快照名字>as
建立刷新机制语句如下:
Alter snapshot<具体快照名字>refresh<刷新方式>start with<第一次刷新时间>next<间隔时间表达式>
下面将对Complete和Fast两种刷新机制分别进行介绍
首先我们假定已创建了一个名testshot的快照,具体语句如下:
Create snapshot testshot as< select查询语句>
1.1 完全刷新快照
1)完全刷新快照的建立
Alter snapshot testshot refresh complete start with sysdate 1/720 next sysdate 1/2
上述语句的意思在快照建立的后的第2分钟,将进行第一次刷新,然后每隔12小时,快照自动进行刷新
2)如果想要进行手动刷新,既不受间隔时间的限制,具体语句如下
begin
dbms_refresh.refresh(‘testshot’,’c’)
end
1.2 快速刷新快照即增量刷新快照
如要创建快速快照,则先要的源端数据表上建立快照日志,具体流程如图1所示。
1)在源端数据表上建立快照日志
Create snapshot log on test
2)设定快照刷新时间
Alter snapshot testshot refresh fast start with sysdate next sydate 1/2
从上面的语句中我们可以到其实完全刷新和快速刷新的基本语句是一样,只是刷新机制有所不同,需要的注意的如果你想使用快速刷新方式,则源端主表不能是视图,因为快照日志不能建立在视图上。
如果在应用过程发现快照不能正常工作,我们可以通过查询表user_jobs,来获取相应的信息,其表结构如表1所示。
2 数据快照建立前的准备工作
上面我们基本介绍了快照语句的基本写法和刷新时间的设置,下面我们将介绍应用数据快照我们所要做的准备工作,首先我们需要在本地Oracle数据上建立一个数据库账号,并在其下建立远程数据库链接。
创建账号的语句如下:
Create user binbin identified by binbin default tablespace pan temporarytablespace temp;
Grant connect ,resource to binbin;
Grant create synonym to binbin;
Grant create snapshot to binbin;
Grant create database link to binbin;
上述语句的意思是创建账号binbin,密码为binbin,并赋予其相应的权限,具体含义请查询Oracle官方介绍
建立远程数据库链接,具体语句如下
Create database link <链接名>connectto<远程服务器用户名>identified by“密码” using “TNS配置的实例名“
下面我们将用上述基本语句创建一个名为 bintobin的数据库链接
Create database linke bintobin connect to sa identifiede by “sa” using“test”
创建好数据库链接,意味着我们可以访问远程数据库上的数据了,并可以具体到其中的一个具体表,下面就是一个访问远程数据库上user表的一个快照
Create snapshot testshot as select * from user@test
3 数据快照技术的具体应用
由于现在学校各个部门都建立有自己的应用系统,各个应用系统数据库的建立时间不一,其中的数据结构、数据类型各不相同,所使用的数据库软件也不尽相同,如何快速准确的实现这些数据之间的交互同步,是我一直在研究的课题。使用快照技术就可以很方便的解决现有的问题。
本文来源于 www.14edu.com(论文网) 原文链接:http://www.14edu.com/ligong/jisuanji/05203H122010.html
下面是我院应用快照技术实现各个子系统间数据读取的实例。图2是各个数据库的分布。
关于快照刷新间隔的方面,由于各应用系统数据的更新要求不一。像一卡通消费数据要求隔天就能查到前一天的数据,而有的数据只需要隔两天进行一次更新即可,所以各个快照的具体刷新方式需要根据具体要求进行相应的设置。该方案至实施以来,在网络情况得以保证的前提下,数据的读取工作基本得以正常进行。
4 结束语
Oracle提供的快照技术为我们提供了一个快速读取远程数据的方法。利用快照可以容易的实现不同数据库间的数据同步和复制问题,特别是在实现数据的增量复制问题。一般都采用增量复制的方法来实现数据的同步,特别是在原数据量很大的情况,可以避免因出错而难以实现数据同步的问题。
发表评论
-
oracle sql优化
2013-09-23 14:29 6161.绑定变量 不适用在OLAP系统中。 因为在OLAP中, ... -
阅读笔记 SQL
2013-08-14 18:24 780Start with...Connect By子句递归查询一般 ... -
oracle 锁 分析
2013-06-18 10:57 4341. 分为 tx 和 tm 。 即 行级 和 表级 其中 ... -
Oracle的TX锁(行级锁、事务锁)
2013-06-18 10:04 885问题:如何使用事务? ... -
mysql 时间戳自动更新
2013-04-09 10:24 938-- Table "pnodetail" ... -
阅读笔记
2013-02-07 17:24 431. 在OLTP系统装要注意sql的硬解析,但是在OLA ... -
synonym
2013-02-07 16:58 901建立一个同义词可以排除一个对象名字的限制. 如果你的数据库有多 ... -
oracle schema
2013-02-07 16:50 715A schema is a collection of dat ... -
物化视图的使用分析
2013-02-05 17:27 7341. 在 深入浅出 系列中,作者列举了一个例子来说明。 ... -
Oracle编程艺术阅读笔记-2
2013-01-29 10:40 7301. 位图索引。 不 ... -
Oracle:位图索引与死锁-2
2013-01-28 18:24 790位图索引被存储为压缩的索引值,其中包含了一个范围内的ROWID ... -
Oracle:位图索引与死锁-1
2013-01-28 18:04 820B 树索引更适合索引动态表的 OLTP 环境,而位图索引更适合 ... -
Oracle编程艺术阅读笔记-1
2013-01-24 18:48 8291. 绑定变量。 不使用会产生的影响: 每次运 ... -
JAVA完全控制Oracle中BLOB、CLOB说明
2012-12-28 17:07 796网络上很多关于JAVA对Oracle中BLOB、CLOB类型字 ... -
H2数据库的使用
2012-12-13 18:40 7331.下载h2的jar,例如h2-1.3.170.jar 2.c ... -
JTA
2012-12-05 17:35 929要理解 JTA 的实现原理 ... -
oracle 体系结构
2012-12-03 23:13 674[img][/img] oracle工作原理 ... -
oracle 存储过程实例-4
2012-12-03 23:04 497--错误处理部分。 --自 ... -
oracle 存储过程实例-4
2012-12-03 23:02 802--错误处理部分。 --自定义异常处理 CREATE OR ... -
oracle 存储过程实例-3
2012-12-03 21:42 771PROCEDURE autoissuereturns ( ...
相关推荐
ORACLE数据快照技术在数据交换中的应用.pdf
有时候我们不小心把数据删掉,或者数据莫名其妙的丢失,这时候我们可以借助Oracle本身自带的快照来进行数据的恢复。
oracle数据快照
ORACLE 数据复制技术
关于数据库的学习资料 很有帮助 实时数据库与Oracle数据交换实现探索
Oracle的DataGuard技术在医院整体数据迁移中的应用.pdf
oracle数据分发技术.pdforacle数据分发技术.pdforacle数据分发技术.pdforacle数据分发技术.pdforacle数据分发技术.pdf
oracle-sqlserver,数据交换工具,不需过多配置,易学习,简单使用。oracle-sqlserver,数据交换工具,不需过多配置,易学习,简单使用。
Oracle提供了一整套完整、集成的技术平台方案来为客户降低建设企业数据仓库和商业智能系统的成本和复杂性。...Oracle应用服务器包含了门户和商业智能服务为您提供访问组织化的和个性化的商业智能应用.
Oracle全文检索技术在海量数据挖掘中的应用.pdf
oracle 数据恢复 误删恢复 111111111111111111111111111111111111111111111111111111111111111111111111
oracle数据仓库国宝级资料(全套) 1、Oracle+10g数据仓库实践--数据仓库基础.pdf 2、Oracle+10g数据仓库实践--总体方案.pdf 3、Oracle+10g数据仓库实践--方案的总体优势.pdf 4、Oracle+10g据仓库实践--数据仓库工具的...
Oracle复制技术在地震前兆元数据交换中的应用.pdf
Oracle数据复制技术在包装企业中的应用.pdf
最近由于更换服务器,需要将Oracle迁移到另外一台机器,在两个服务器环境相同,以及 Oracle版本相同的前提下,通过直接拷贝数据文件到新服务器,就可以直接迁移成功。这里记录一下迁移步骤。需要的朋友可以参考。
Oracle数据仓库应用技术的研究与实现
巧用dblink结合oracle快照实现两台服务器的数据同步
oracle变化数据捕获,学习和理解如何在ORACLE数据库跟踪数据变化的教程
OracleEBS中文数据字典
Oracle EBS中文数据字典.pdf