啟用Flashback Database閃回資料庫功能(閃回區滿解決辦法 )

hd_system發表於2016-11-10
若想順利的使用閃回資料庫功能,需要先將資料庫置於閃回資料庫狀態。此文記錄開啟閃回資料庫功能的步驟,注意調整過程需要重啟資料庫並確保資料庫處於歸檔模式。

1.確認資料庫是否開啟Flashback Database功能
若未開啟,則繼續,若已經開啟,請從此小文兒飄過~~
SYS@ora11g> select flashback_on from v$database;

FLASHBACK_ON
------------------
NO

2.修改db_recovery_file_dest、db_recovery_file_dest_size及
db_flashback_retention_target三個引數內容
1)
db_recovery_file_dest、db_recovery_file_dest_size兩個引數用於指定閃回日誌存放位置及最大大小。可以根據具體環境做相應調整。
SYS@ora11g> show parameter recovery_file

NAME TYPE VALUE
-------------------------- ----------- ------------------------------
db_recovery_file_dest string /u01/app/oracle/flash_recovery
_area
db_recovery_file_dest_size big integer 3852M

2)確認db_flashback_retention_target引數設定的內容。
db_flashback_retention_target引數限定了閃回可恢復的時間範圍,預設是1440分鐘,一天的時間。
SYS@ora11g> show parameter db_flashback_retention_target

NAME TYPE VALUE
------------------------------------ ----------- ---------
db_flashback_retention_target integer 1440

3.重啟資料庫到mount狀態
SYS@ora11g> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@ora11g> startup mount;
ORACLE instance started.

Total System Global Area 313860096 bytes
Fixed Size 1336232 bytes
Variable Size 239078488 bytes
Database Buffers 67108864 bytes
Redo Buffers 6336512 bytes
Database mounted.

4.在mount狀態下啟用Flashback功能
SYS@ora11g> alter database flashback on;
alter database flashback on
*
ERROR at line 1:
ORA-38706: Cannot turn on FLASHBACK DATABASE logging.
ORA-38707: Media recovery is not enabled.

此處報錯是由於資料庫未執行在歸檔模式,啟用閃回資料庫功能的前提是資料庫執行在歸檔模式下。因此需要先調整資料庫為歸檔模式。

SYS@ora11g> alter database archivelog;

Database altered.

SYS@ora11g> alter database flashback on;

Database altered.

閃回資料庫開啟成功。

5.開啟資料庫
SYS@ora11g> alter database open;

Database altered.

6.驗證Flashback功能已經成功開啟
SYS@ora11g> select flashback_on from v$database;

FLASHBACK_ON
------------------
YES


7.小結
啟用閃回資料庫的過程相對簡單,注意先保證資料庫執行在歸檔模式下。這是使用閃回資料庫的前提,需要熟練掌握。

****************************************************************************************************

閃回區滿:
OS: rm -rf [archivelog  autobackup  backupset  controlfile  flashback  onlinelog]
eg :
archivelog  autobackup  backupset  controlfile  flashback  onlinelog
[@jibo PROD]$ cd autobackup/
[oracle@jibo autobackup]$ ls
2014_10_13  2014_10_15  2014_10_16
[oracle@jibo autobackup]$ rm -rf 2014_10_13
[oracle@jibo autobackup]$ rm -rf 2014_10_15

RMAN:

RMAN> crosscheck backup;
RMAN> delete expired backup;

RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

sqlplus:

parameter db_re

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/app/oracle/fast_recovery_
                                                 area
db_recovery_file_dest_size           big integer 4G
db_recycle_cache_size                big integer 0
v$recovery_area_usage;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 FILE_TYPE                                          VARCHAR2(20)
 PERCENT_SPACE_USED                                 NUMBER
 PERCENT_SPACE_RECLAIMABLE                          NUMBER
 NUMBER_OF_FILES                                    NUMBER

sum(PERCENT_SPACE_USED) from v$recovery_area_usage;

SUM(PERCENT_SPACE_USED)
-----------------------
                  33.45

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29209863/viewspace-2128244/,如需轉載,請註明出處,否則將追究法律責任。

相關文章