Oracle快照
--名词说明:源——被同步的数据库
目的——要同步到的数据库
前6步必须执行,第6以后是一些辅助信息.
--1、在目的数据库上,创建dblink
drop public database link dblink_orc92_182;
Create public DATABASE LINK dblink_orc92_182 CONNECT TO bst114 IDENTIFIED BY password USING 'orc92_192.168.254.111';
--dblink_orc92_182 是dblink_name
--bst114 是 username
--password 是 password
--''orc92_192.168.254.111'' 是远程数据库名
--2、在源和目的数据库上创建要同步的表(最好有主键约束,快照才可以快速刷新)
drop table test_user;
create table test_user(id number(10) primary key,name varchar2(12),age number(3));
--3、在目的数据库上,测试dblink
select * from test_user@dblink_orc92_182; //查询的是源数据库的表
select * from test_user;
--4、在源数据库上,创建要同步表的快照日志
Create snapshot log on test_user;
--5、创建快照,在目的数据库上创建快照
Create snapshot sn_test_user as select * from test_user@dblink_orc92_182;
--6、设置快照刷新时间(只能选择一种刷新方式,推荐使用快速刷新,这样才可以用触发器双向同步)
快速刷新
Alter snapshot sn_test_user refresh fast Start with sysdate next sysdate with primary key;
--oracle马上自动快速刷新,以后不停的刷新,只能在测试时使用.真实项目要正确权衡刷新时间.
完全刷新
Alter snapshot sn_test_user refresh complete Start with sysdate+30/(24*60*60) next sysdate+30/(24*60*60);
--oracle自动在30秒后进行第一次完全刷新,以后每隔30秒完全刷新一次
--7、手动刷新快照,在没有自动刷新的情况下,可以手动刷新快照.
手动刷新方式1
begin
dbms_refresh.refresh(''sn_test_user'');
end;
手动刷新方式2
EXEC DBMS_SNAPSHOT.REFRESH(''sn_test_user'',''F''); //第一个参数是快照名,第二个参数 F 是快速刷新 C 是完全刷新.
--8.修改会话时间格式
ALTER SESSION SET NLS_DATE_FORMAT = ''YYYY-MM-DD HH24:MI:SS'';
--9.查看快照最后一次刷新时间
SELECT NAME,LAST_REFRESH from ALL_SNAPSHOT_REFRESH_TIMES;
--10.查看快照下次执行时间
select last_date,next_date,what from user_jobs o
相关文档:
http://blog.csdn.net/junmail/archive/2009/07/29/4392264.aspx
聚集(cluster)是存储表数据的可选择的方法。一个聚集是一组表,将具有同一公共列值的行存储在一起,并且它们经常一起使用。这些公共列构成聚集码。
经常被同时访问的表在物理位置上可以存储在一起。为了将它们存储在一起,就要创建一个簇( c ......
聚集(cluster)是存储表数据的可选择的方法。一个聚集是一组表,将具有同一公共列值的行存储在一起,并且它们经常一起使用。这些公共列构成聚集码。
经常被同时访问的表在物理位置上可以存储在一起。为了将它们存储在一起,就要创建一个簇( c l u s t e r )来管理这些表。表中的数据一起存储在簇中,从而最小化必须执行的I ......
声明:以下内容转自 http://www.weixiuwang.com/Article/server/tech/200610/22126.html
1. 查询正在执行语句的执行计划(也就是实际语句执行计划)
select * from v$sql_plan where hash_value = (select sql_hash_value from v$session where sid = 1111);
其中id和parent_id表示 ......