Oracle快照原理及实现总结
来源:互联网 发布:淘宝店铺只有pc端装修 编辑:程序博客网 时间:2024/05/19 09:43
From:http://blog.chinaunix.net/uid-261392-id-2138969.html
oracle数据库的快照是一个表,它包含有对一个本地或远程数据库上一个或多个表或视图的查询的结果。也就是说快照根本的原理就是将本地或远程数据库上的一个查询结果保存在一个表中。 以下是建立的Snapshot,目的是从业务数据库上将数据Copy到处理数据库上,是不同的两个服务器之间对数据copy。 第一步:在处理服务器上的Oracle终端,建立database link,业务数据库服务器SID为TEST create database link TEST_DBLINK.US.ORACLE.COM connect to AMICOS identified by AMICOS using 'test'; 第二步:在业务数据库上对应的表建立快照日志 (如果创建的是快速刷新,则需要这步) Create snapshot log on A_Table; 第三步:建立Snapshot 快照名称为:Test_SnapShot Create snapshot Test_SnapShot REFRESH COMPLETE START WITH SYSDATE NEXT SYSDATE+1/24 as select * from A_Table@TEST_DBLINK 说明:REFRESH 是刷新方法 刷新方式有:COMPLETE 和FAST和force三种: fast 快速刷新,用snapshot log,只更新时间段变动部分 complete 完全刷新,运行SQL语句 force 自动判断刷新,介于fast和complete之间 而START WITH 是说明开始执行的时间。 Next是下次执行的时间 而AS以后是构成快照的查询方法。 相关的方法: 更改快照 ALTER SNAPSHOT Test_SnapShot REFRESH COMPLETE START WITH SYSDATE NEXT SYSDATE+1/2; 手动刷新快照 在命令界面执行: EXEC DBMS_SNAPSHOT.REFRESH('Test_SnapShot ','C'); 第一个参数是要刷新的快照名 第二个参数是刷新的方式,F----FAST, C---COMPLETE 查看快照最后刷新的日期 SELECT NAME,LAST_REFRESH FROM ALL_SNAPSHOT_REFRESH_TIMES; 最后非常的方案: 1:为需要做Snapshot的表建立Snapshot日志 create snapshot log on t1 with rowid; 这里使用ROWID建立日记的参数 2:采用Fast的方式建立快照,使用rowid做为参考参数 create snapshot fb_test_b refresh fast with rowid start with sysdate next sysdate+1/1440 as select * from fb_test_b@my_dblink; 最好能按照rowid来建立快照。要不然就必须要为表建立Primary Key。 Oracle 快照及 dblink使用 (两台服务器数据同步) --名词说明:源——被同步的数据库 -- 目的——要同步到的数据库 /*一、创建dblink:*/ --1、在目的数据库上,创建dblin drop database link dblink_anson; Create public database link dblink_anson Connect to lg identified by lg using 'SDLGDB'; --源数据库的用户名、密码、服务器名k /*二、创建快照:*/ --1、在源和目的数据库上同时执行一下语句,创建要被同步的表 drop table tb_anson; create table tb_anson(c1 varchar2(12)); alter table tb_anson add constraint pk_anson primary key (C1); --2、在目的数据库上,测试dblink select * from tb_anson@dblink_anson; select * from tb_anson; --3、在源数据库上,创建要同步表的快照日志 Create snapshot log on tb_anson; --4、创建快照,快照(被同步(源)数据库服务必须启动) Create snapshot sn_anson as select * from tb_anson@dblink_anson; --5、设置快照刷新时间 Alter snapshot anson refresh fast Start with sysdate+1/24*60 next sysdate+10/24*60; --oracle自动在1分钟后进行第一次快速刷新,以后每隔10分钟快速刷新一次 Alter snapshot anson refresh complete Start with sysdate+30/24*60*60 next sysdate+1; --oracle自动在30钞后进行第一次完全刷新,以后每隔1天完全刷新一次 --6、手动刷新快照 begin dbms_refresh.refresh('"CS"."SN_ANSON"'); end;
0 0
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结_2
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结
- Oracle快照原理及实现总结
- oracle快照原理及如何实现生成快照
- Oracle快照实现-整理
- Oracle快照实现 ZT
- oracle 快照实例及介绍
- RHEL6 snapshot快照原理及实验
- Ceph快照的原理和实现
- 用FLEX实现屏幕快照及下载
- oracle rownum 原理及分页查询实现
- Oracle快照
- IOS 消息推送原理及实现总结
- 链表高效删除
- Android实战简易教程-第四十四枪(Ripple Effect-为控件增加涟漪效果)
- 无人机后门技术调研与确认
- 设计模式之原型模式---prototype
- 关于子线程更新UI
- Oracle快照原理及实现总结
- 前缀表达式、中缀表达式和后缀表达式
- 【POJ2240】【Arbitrage】【增加源点】【判断是否整个图中存在环】【bell-ford】
- [译]From User Input to Animations Using State Machines
- 【马云警醒你】 35岁你还穷,活该你穷!读完,就被骂醒了!
- 定义系统级别的异常代替接口、类中方法处理失败的信息返回
- [笔记][Java7并发编程实战手册]3.8 并发任务间的数据交换Exchanger
- Spring SimpleJdbcTemplate Querying examples
- 遵循以下几条原则,不再纠结Xcode代码签名问题