国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

怎樣使兩臺服務器的oracle9i的數據同步

2024-08-29 13:42:07
字體:
來源:轉載
供稿:網友
高機復制就是物化視圖:
  物化視圖是包括一個查詢結果的數據庫對像,它是遠程數據的的本地副本,或者用來生成基于數據表求和的匯總表。物化視圖存儲基于遠程表的數據,也可以稱為快照。
  
  物化視圖可以查詢表,視圖和其它的物化視圖。
  
  通常情況下,物化視圖被稱為主表(在復制期間)或明細表(在數據倉庫中)。
  
  對于復制,物化視圖答應你在本地維護遠程數據的副本,這些副本是只讀的。假如你想修改本地副本,必須用高級復制的功能。當你想從一個表或視圖中抽取數據時,你可以用從物化視圖中抽取。
  
  對于數據倉庫,創建的物化視圖通常情況下是聚合視圖,單一表聚合視圖和連接視圖。
  
  本篇我們將會看到怎樣創建物化視圖并且討論它的刷新選項。
  
  在復制環境下,創建的物化視圖通常情況下主鍵,rowid,和子查詢視圖。
  
  1.主鍵物化視圖:
  下面的語法在遠程數據庫表emp上創建主鍵物化視圖
  
  SQL> CREATE MATERIALIZED VIEW mv_emp_pk
  REFRESH FAST START WITH SYSDATE
  NEXT SYSDATE + 1/48
  WITH PRIMARY KEY
  AS SELECT * FROM emp@remote_db;
  Materialized view created.
  注重:當用FAST選項創建物化視圖,必須創建基于主表的視圖日志,如下:
  
  SQL> CREATE MATERIALIZED VIEW LOG ON emp;
  Materialized view log created.
  
  2.Rowid物化視圖
  下面的語法在遠程數據庫表emp上創建Rowid物化視圖
  
  SQL> CREATE MATERIALIZED VIEW mv_emp_rowid
  REFRESH WITH ROWID
  AS SELECT * FROM emp@remote_db;
  Materialized view log created.
  
  3.子查詢物化視圖
  下面的語法在遠程數據庫表emp上創建基于emp和dept表的子查詢物化視圖
  
  SQL> CREATE MATERIALIZED VIEW mv_empdept
  AS SELECT * FROM emp@remote_db e
  WHERE EXISTS
  (SELECT * FROM dept@remote_db d
  WHERE e.dept_no = d.dept_no)
  Materialized view log created.
  REFRESH 子句
  
  [refresh [fastcompleteforce]
  [on demand commit]
  [start with date] [next date]
  [with {primary keyrowid}]]
  
  Refresh選項說明:
  
  a. nOracle用刷新方法在物化視圖中刷新數據.
  
  b. 是基于主鍵還是基于rowid的物化視圖
  
  c. 物化視圖的刷新時間和間隔刷新時間
  
  Refresh方法-FAST子句
  
  增量刷新用物化視圖日志(參照上面所述)來發送主表已經修改的數據行到物化視圖中.假如指定REFRESH FAST子句,那么應該對主表創建物化視圖日志
  
  SQL> CREATE MATERIALIZED VIEW LOG ON emp;
  Materialized view log created.
  
  對于增量刷新選項,假如在子查詢中存在分析函數,則物化視圖不起作用。
  
  Refresh方法- COMPLETE子句
  
  完全刷新重新生成整個視圖,假如請求完全刷新,oracle會完成    完全刷新即使增量刷新可用。
  
  Refresh Method – FORCE 子句
  
  當指定FORCE子句,假如增量刷新可用Oracle將完成增量刷新,否則將完成完全刷新,假如不指定刷新方法(FAST, COMPLETE, or FORCE),Force選項是默認選項
  
  主鍵和ROWD子句
  
  WITH PRIMARY KEY選項生成主鍵物化視圖,也就是說物化視圖是基于主表的主鍵,而不是ROWID(對應于ROWID子句). PRIMARY KEY是默認選項,為了生成PRIMARY KEY子句,應該在主表上定義主鍵,否則應該用基于ROWID的物化視圖.
  
  主鍵物化視圖答應識別物化視圖主表而不影響物化視圖增量刷新的可用性。
  
  Rowid物化視圖只有一個單一的主表,不能包括下面任何一項:
  
  n Distinct 或者聚合函數.
  
  n Group by,子查詢,連接和SET操作
  
  刷新時間
  
  START WITH子句通知數據庫完成從主表到本地表第一次復制的時間,應該及時估計下一次運行的時間點, NEXT 子句說明了刷新的間隔時間.
  
  SQL> CREATE MATERIALIZED VIEW mv_emp_pk
  REFRESH FAST
  START WITH SYSDATE
  NEXT SYSDATE + 2
  WITH PRIMARY KEY
  AS SELECT * FROM emp@remote_db;
  Materialized view created.
  在上面的例子中,物化視圖數據的第一個副本在創建時生成,以后每兩天刷新一次.
  
  總結
  物化視圖提供了可伸縮的基于主鍵或ROWID的視圖,指定了刷新方法和自動刷新的時間。
     


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尼玛县| 济阳县| 抚松县| 明溪县| 萝北县| 玉山县| 东莞市| 岳阳县| 沭阳县| 于田县| 赞皇县| 鸡泽县| 奇台县| 米脂县| 高台县| 武汉市| 大厂| 福建省| 建平县| 海南省| 德惠市| 南乐县| 芒康县| 定襄县| 大埔县| 旅游| 稷山县| 池州市| 宁都县| 驻马店市| 南宁市| 兴山县| 建昌县| 都江堰市| 云龙县| 江西省| 额尔古纳市| 西充县| 玉树县| 建水县| 东方市|