关于Oracle数据库中快照的使用方法

  oracle 数据库的快照是一个表,它包含有对一个本地或远程数据库上一个或多个表或视图的查询的结果。正因为快照是一个主表的查询子集,使用快照可以加快数据的查询速度;在保持不同数据库中的两个表的同步中,利用快照刷新,数据的更新性能也会有很大的改善。

  下面以我在开发襄樊市电信局 170 话费催缴系统中使用快照加快查询速度的实现过程为例来说明快照的使用方法:

  170 话费催缴系统是一个向用户电话播放催缴话费提示音的系统。用户的欠费金额存放在 rs6000 小型机 sffw 用户下的表 yh_qfcx 中( yh_qfcx 表是一个随用户缴费情况动态变化的欠费记录表),而催缴系统的数据按要求存放在另外一台 xf170 服务器 dmtcx 用户下,为在 dmtcx 用户下使用 sffw 用户下表 yh_qfcx 中的部分数据,我在 dmtcx 用户下建立了 yh_qfcx 的快照 S_yh_qfcx ,以加快查询速度。

  具体步骤如下:

  一、在 sffw 用户下建立表 yh_qfcx 的快照日志;

  只有先建立表 yh_qfcx 的快照日志,才能在快照中执行快速刷新。

  Create snapshot log on yh_qfcx;

  二、在 dmtcx 用户下建立到 sffw 用户的数据库链 link_sf ;

  建立了到 sffw 用户的数据库链后才能从 sffw 用户下的表 yh_qfcx 中获取数据。
引用:
Create database link link_sf
Connect to sffw identified by xxxxxxx using 'rs6000';