oracle 閃回
閃回概述:
閃回資料庫就是當出現邏輯錯誤時,能夠將整個資料庫回退到出錯前的那個時間點上。實現閃回資料庫的基礎就是閃回日誌。只要我們配置了閃回資料庫,就會自動建立閃回日誌。這時只要資料庫裡的資料發生了變化,Oracle就會將資料被修改前的舊值儲存在閃回日誌裡。當我們需要閃回資料庫時,ORACLE就會讀取閃回日誌裡的記錄,並應用到資料庫上,從而將資料庫回退到歷史上的某個時間點的狀態上。
閃回日誌與聯機重做日誌一樣,都是迴圈使用的,但它們還是有不少的差異,當事務修改了buffer_cache裡的資料時,會將改變前的值和改變後的值都以重做記錄的形式儲存在log_buffer中,然後透過LGWR程式將這些重做記錄寫入到聯機日誌檔案中。但是在記錄閃回日誌時,只會將改變前的值儲存在flash buffer中,再由RVWR程式寫入到閃回日誌檔案中。
閃回分為如下幾種:
a)閃回資料庫
b)閃回刪除
c)閃回表
d)閃回版本查詢(flashback version query)
e)閃回事物查詢(flashback transaction query)
f)閃回查詢(flashback query)
注:上述六種閃回,只有閃回資料庫和Flash Recovery Area有關係,閃回資料庫的閃回日誌(Flashback log)只能放在閃回恢復區中。而其它的閃回功能,都和閃回恢復區沒有任何聯絡。也就是說,使用閃回資料庫功能時必須使用閃回恢復區,而10G的其它閃回功能中,閃回恢復區不是必須的。
閃回資料庫:
啟用閃回資料庫,必須按如下四個步聚進行;
1.將資料庫開啟為歸檔模式
2.配置閃回恢復區
3.配置閃回保留時間
4.啟用閃回資料庫
5.關閉閃回資料庫
注:一旦關閉閃回資料庫,則閃回恢復區的閃回日誌都被自動刪除
在配置完閃回資料庫以後,如果確實需要進行閃回資料庫操作的話,可以透過RMAN進行,也可以透過SQL*PLUS進行。
閃回資料庫就是當出現邏輯錯誤時,能夠將整個資料庫回退到出錯前的那個時間點上。實現閃回資料庫的基礎就是閃回日誌。只要我們配置了閃回資料庫,就會自動建立閃回日誌。這時只要資料庫裡的資料發生了變化,Oracle就會將資料被修改前的舊值儲存在閃回日誌裡。當我們需要閃回資料庫時,ORACLE就會讀取閃回日誌裡的記錄,並應用到資料庫上,從而將資料庫回退到歷史上的某個時間點的狀態上。
閃回日誌與聯機重做日誌一樣,都是迴圈使用的,但它們還是有不少的差異,當事務修改了buffer_cache裡的資料時,會將改變前的值和改變後的值都以重做記錄的形式儲存在log_buffer中,然後透過LGWR程式將這些重做記錄寫入到聯機日誌檔案中。但是在記錄閃回日誌時,只會將改變前的值儲存在flash buffer中,再由RVWR程式寫入到閃回日誌檔案中。
閃回分為如下幾種:
a)閃回資料庫
b)閃回刪除
c)閃回表
d)閃回版本查詢(flashback version query)
e)閃回事物查詢(flashback transaction query)
f)閃回查詢(flashback query)
注:上述六種閃回,只有閃回資料庫和Flash Recovery Area有關係,閃回資料庫的閃回日誌(Flashback log)只能放在閃回恢復區中。而其它的閃回功能,都和閃回恢復區沒有任何聯絡。也就是說,使用閃回資料庫功能時必須使用閃回恢復區,而10G的其它閃回功能中,閃回恢復區不是必須的。
閃回資料庫:
啟用閃回資料庫,必須按如下四個步聚進行;
1.將資料庫開啟為歸檔模式
- sql> archive log list; #檢視是不是歸檔方式
- sql> alter system set log_archive_start=true scope=spfile; #啟用主動歸檔
- sql> alter system set log_archive_dest=''location=/oracle/ora9/oradata/arch'' scope=spfile;#設定歸檔路徑
- #如果歸檔到兩個位置,則可以透過上邊方法實現
- sql> alter system set log_archive_format=''arch_%d_%t_%r_%s.log'' #設定歸檔日記款式
- sql> shutdown immediate;
- sql> startup mount; #開啟控制檔案,不開啟資料檔案
- sql> alter database archivelog; #將資料庫切換為歸檔模式
- sql> alter database open; #將資料檔案開啟
- sql> archive log list; #檢視此時是否處於歸檔模式
- 查詢以確定資料庫位於archivelog模式中且歸檔過程正在執行
- sql> select log_mode from v$database;
- sql> select archiver from v$instance;
2.配置閃回恢復區
- sql> alter system set db_recovery_file_dest='/arch01/flash_recovery_area' scope=both;
- sql> alter system set db_recovery_file_dest_size='10g' scope=both sid='oyy3a';
3.配置閃回保留時間
- sql> alter system set db_flashback_retention_target=2880 scope=spfile; ----該引數以分鐘為單位,預設為1440分鐘,也就是24小時。
4.啟用閃回資料庫
- sql> startup mount;
- sql>alter databaase flashback on;
5.關閉閃回資料庫
注:一旦關閉閃回資料庫,則閃回恢復區的閃回日誌都被自動刪除
- sql> startup mount;
- sql>alter databaase flashback off;
在配置完閃回資料庫以後,如果確實需要進行閃回資料庫操作的話,可以透過RMAN進行,也可以透過SQL*PLUS進行。
- sql> shutdown immediate;
- sql> startup mount exclusive;
- sql> flashback database to timestamp to_date('2005-10-01 15:32:00','yyyy-mm-dd hh24:mi:ss');
- sql> alter database open read only; ----先以只讀模式開啟,來確認閃回的資料是否正常,如查資料正確,則需要關閉資料庫,並以resetlogs方式開啟。
- sql> alter database open resetlogs;
-
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29446986/viewspace-1248695/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle閃回技術 為Oracle閃回配置資料庫Oracle資料庫
- Oracle資料庫閃回Oracle資料庫
- 【RECO_ORACLE】Oracle閃回PDB的方法Oracle
- Oracle 11G 閃回技術 使用Oracle閃回事務查詢Oracle
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- Oracle閃回技術--Flashback Version QueryOracle
- Oracle 閃回資料庫測試Oracle資料庫
- 【PDB】pdb閃回,Oracle還原點Oracle
- 詳解oracle資料庫閃回Oracle資料庫
- Oracle資料庫閃回區空間不足Oracle資料庫
- Oracle回收站表閃回機制研究Oracle
- ORACLE 閃回檢視v$flashback_database_log/statOracleDatabase
- DM7閃回與閃回查詢
- Oracle閃回技術 概覽 應用程式開發功能Oracle
- Oracle 12.2新特性: PDB級閃回資料庫(Flashback PDB)Oracle資料庫
- Oracle閃回功能恢復偶然丟失的資料(轉)Oracle
- 【FLASHBACK】Oracle閃回及回收站相關語句參考Oracle
- 【Oracle 12c資料庫支援閃回庫功能】實驗Oracle資料庫
- 2.6.3 指定閃回區
- flashback query閃回資料
- Oracle drop分割槽表單個分割槽無法透過閃回恢復Oracle
- DM8 閃回查詢
- mysql閃回工具binlog2sqlMySql
- my2sql資料閃回SQL
- 【趙強老師】MySQL的閃回MySql
- oracle回滾溯源Oracle
- Oracle 19C Data Guard基礎運維-07 failover後閃回恢復dg架構Oracle運維AI架構
- Flashback Drop閃回刪除功能實踐
- dg_閃回資料庫實驗資料庫
- 工具分享丨資料閃回工具MyFlash
- [20180423]表空間閃回與snapshot standby
- Orcale利用閃回功能恢復資料
- Oracle 資料回滾Oracle
- MySQL工具之binlog2sql閃回操作MySql
- 【Flashback】Flashback Drop閃回刪除功能實驗
- oracle打補丁回顧Oracle
- 利用binlog2sql閃回丟失資料SQL
- 【Flashback】Flashback Database閃回資料庫功能實驗Database資料庫
- 一個非常老但是很有用的功能-閃回