日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle全库快照,Oracle数据库快照的使用

發(fā)布時間:2025/4/5 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle全库快照,Oracle数据库快照的使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

正在看的ORACLE教程是:Oracle數(shù)據(jù)庫快照的使用。oracle數(shù)據(jù)庫的快照是一個表,它包含有對一個本地或遠程數(shù)據(jù)庫上一個或多個表或視圖的查詢的結(jié)果。正因為快照是一個主表的查詢子集,使用快照可以加快數(shù)據(jù)的查詢速度;在保持不同數(shù)據(jù)庫中的兩個表的同步中,利用快照刷新,數(shù)據(jù)的更新性能也會有很大的改善。

下面以我在開發(fā)襄樊市電信局170話費催繳系統(tǒng)中使用快照加快查詢速度的實現(xiàn)過程為例來說明快照的使用方法:

170話費催繳系統(tǒng)是一個向用戶電話播放催繳話費提示音的系統(tǒng)。用戶的欠費金額存放在rs6000小型機sffw用戶下的表yh_qfcx中(yh_qfcx表是一個隨用戶繳費情況動態(tài)變化的欠費記錄表),而催繳系統(tǒng)的數(shù)據(jù)按要求存放在另外一臺xf170服務器dmtcx用戶下,為在dmtcx用戶下使用sffw用戶下表yh_qfcx中的部分數(shù)據(jù),我在dmtcx用戶下建立了yh_qfcx的快照S_yh_qfcx,以加快查詢速度。

具體步驟如下:

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

只有先建立表yh_qfcx的快照日志,才能在快照中執(zhí)行快速刷新。

Create snapshot log on yh_qfcx;

二、在dmtcx用戶下建立到sffw用戶的數(shù)據(jù)庫鏈link_sf;

建立了到sffw用戶的數(shù)據(jù)庫鏈后才能從sffw用戶下的表yh_qfcx中獲取數(shù)據(jù)。

Create database link link_sf

Connect to sffw identified by xxxxxxx using 'rs6000';

三、在dmtcx用戶下建立快照s_yh_qfcx;

Create snapshot s_yh_qfcx as

Select yhh,qf6+qf5+qf4+qf3+qf2+qf1+qf qfje

From yh_qfcx@link_sf

Where tjbz='K' and bz6+bz5+bz4+bz3+bz2+bz1+bz>0;

四、根據(jù)需要修改快照刷新的間隔時間;

dmtcx用戶下的快照s_yh_qfcx為了與sffw用戶下的主表yh_qfcx保持同步,需要不斷刷新快照。只有設定了快照的刷新間隔時間,oracle才會自動刷新該快照。

快照的刷新有兩種方式:快速刷新和完全刷新。快速刷新需要快照的主表先有快照日志存在;完全刷新時oracle執(zhí)行快照查詢,將結(jié)果放入快照??焖偎⑿卤韧耆⑿驴?#xff0c;因為快速刷新將主數(shù)據(jù)庫的數(shù)據(jù)經(jīng)網(wǎng)絡發(fā)送到快照的數(shù)據(jù)少,僅需傳送主表中修改過的數(shù)據(jù),而完全刷新要傳送快照查詢的全部結(jié)果。

Alter snapshot s_yh_qfcx refresh fast

Start with sysdate+1/1440 next sysdate+1/144;

{此SQL語句的意思為:設定oracle自動在1分鐘

(1/24*60)后進行第一次快速刷新,以后每隔10分鐘

(10/24*60)快速刷新一次。}

Alter snapshot s_yh_qfcx refresh complete

Start with sysdate+1/2880 next sysdate+1;

{此SQL語句的意思為:設定oracle自動在30鈔

(30/24*60*60)后進行第一次完全刷新,

以后每隔1天完全刷新一次。}

說明:

1、因為快照刷新是服務器自動完成的,所以要保證oracle數(shù)據(jù)庫啟動了快照刷新進程。查看oracle數(shù)據(jù)庫是否啟動了快照刷新進程,可以以數(shù)據(jù)庫sys身份查看視圖V_$SYSTEM_PARAMETER中的參數(shù)snapshot_refresh_processes的值是否為1,如果不為1,則快照刷新進程未啟動。

2、啟動快照刷新進程的方法為:修改oracle數(shù)據(jù)庫的初始化文件initorcl.ora,將其中的snapshot_refresh_processes參數(shù)的值改由0改為1,然后重新啟動oracle數(shù)據(jù)即可。

3、需要說明的是:建立快照日志時oracle數(shù)據(jù)庫為我們建立了一個基于yh_qfcx的觸發(fā)器tlog$_yh_qfcx和快照日志表mlog$_yh_qfcx;建立快照時oracle數(shù)據(jù)庫為我們建立了一個表、兩個視圖、一個索引,它們分別為:

一個表:snap$_s_yh_qfcx;

兩個視圖:mview$_s_yh_qfcx和s_yh_qfcx;

一個索引:I_snap$_s_yh_qfcx(

基于表snap$_s_yh_qfcx中的m_row$$字段。

免責聲明:本站所有文章和圖片均來自用戶分享和網(wǎng)絡收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權(quán)利,請聯(lián)系網(wǎng)站客服處理。

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的oracle全库快照,Oracle数据库快照的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。