ORA-19606: Cannot copy or restore to snapshot control file

因發現  flash area 不多了,
通過 select * from v$flash_recovery_area_usage ; 發現是備份集佔用空間太多。
於是delete obsolete;  發現出現報錯  ORA-19606: Cannot copy or restore to snapshot control file

RMAN> delete obsolete; 

RMAN retention policy will be applied to the command
RMAN retention policy is set to redundancy 1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=174 device type=DISK
Deleting the following obsolete backups and copies:
Type                 Key    Completion Time    Filename/Handle
-------------------- ------ ------------------ --------------------
Control File Copy     1      23-AUG-13          /u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f
Backup Set           560    20-SEP-13        
  Backup Piece       560    20-SEP-13          +DATADG/finaprim/backupset/2013_09_20/annnf0_tag20130920t233259_0.1829.826673579
Backup Set           561    20-SEP-13        
  Backup Piece       561    20-SEP-13          +DATADG/finaprim/autobackup/2013_09_20/s_826673580.945.826673581
Backup Set           562    21-SEP-13        
  Backup Piece       562    21-SEP-13          +DATADG/finaprim/backupset/2013_09_21/annnf0_tag20130921t233004_0.623.826759805
Backup Set           563    21-SEP-13        
  Backup Piece       563    21-SEP-13          +DATADG/finaprim/backupset/2013_09_21/nnndf0_tag20130921t233011_0.693.826759813
Backup Set           564    21-SEP-13        
  Backup Piece       564    21-SEP-13          +DATADG/finaprim/backupset/2013_09_21/annnf0_tag20130921t233257_0.807.826759977
Backup Set           565    21-SEP-13        
  Backup Piece       565    21-SEP-13          +DATADG/finaprim/autobackup/2013_09_21/s_826759979.743.826759979
Backup Set           566    22-SEP-13        
  Backup Piece       566    22-SEP-13          +DATADG/finaprim/backupset/2013_09_22/annnf0_tag20130922t233005_0.1800.826846207
Backup Set           567    22-SEP-13        
  Backup Piece       567    22-SEP-13          +DATADG/finaprim/backupset/2013_09_22/nnndf0_tag20130922t233021_0.624.826846223
Backup Set           568    22-SEP-13        
  Backup Piece       568    22-SEP-13          +DATADG/finaprim/backupset/2013_09_22/annnf0_tag20130922t233307_0.1887.826846387
Backup Set           569    22-SEP-13        
  Backup Piece       569    22-SEP-13          +DATADG/finaprim/autobackup/2013_09_22/s_826846388.1891.826846389
Backup Set           570    23-SEP-13        
  Backup Piece       570    23-SEP-13          +DATADG/finaprim/backupset/2013_09_23/annnf0_tag20130923t233004_0.1041.826932605
Backup Set           571    23-SEP-13        
  Backup Piece       571    23-SEP-13          +DATADG/finaprim/backupset/2013_09_23/nnndf0_tag20130923t233020_0.776.826932621
Backup Set           572    23-SEP-13        
  Backup Piece       572    23-SEP-13          +DATADG/finaprim/backupset/2013_09_23/annnf0_tag20130923t233306_0.1895.826932787
Backup Set           573    23-SEP-13        
  Backup Piece       573    23-SEP-13          +DATADG/finaprim/autobackup/2013_09_23/s_826932787.1061.826932789
Backup Set           574    24-SEP-13        
  Backup Piece       574    24-SEP-13          +DATADG/finaprim/backupset/2013_09_24/annnf0_tag20130924t233005_0.1082.827019005

Do you really want to delete the above objects (enter YES or NO)? yes
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of delete command on ORA_DISK_1 channel at 09/25/2013 09:16:59
ORA-19606: Cannot copy or restore to snapshot control file

解決辦法:
   就是把SNAPSHOT CONTROLFILE的配置路徑改變,然後刪除控制文件快照 
---重命名SNAPSHOT 文件
RMAN>  CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f_bak';

new RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f_bak';
new RMAN configuration parameters are successfully stored


---- crosscheck 
RMAN> crosscheck controlfilecopy '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f';

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=174 device type=DISK
validation failed for control file copy
control file copy file name=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f RECID=1 STAMP=824231734
Crosschecked 1 objects


RMAN> delete expired controlfilecopy '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f';

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=174 device type=DISK
List of Control File Copies
===========================

Key     S Completion Time Ckp SCN    Ckp Time      
------- - --------------- ---------- ---------------
1       X 23-AUG-13       128277627  23-AUG-13     
        Name: /u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f
        Tag: TAG20130823T171534


Do you really want to delete the above objects (enter YES or NO)? yes
deleted control file copy
control file copy file name=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f RECID=1 STAMP=824231734
Deleted 1 EXPIRED objects


RMAN>  CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f';

old RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f_bak';
new RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f';
new RMAN configuration parameters are successfully stored

RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME clear;

old RMAN configuration parameters:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_finaprim.f';
RMAN configuration parameters are successfully reset to default value

至此,就可以再執行上面的刪除命令了。


附:閃回恢復區的相關參數,修改命令
閃回恢復區主要通過3個初始化參數來設置和管理

db_recovery_file_dest指定閃回恢復區的位置
db_recovery_file_dest_size
指定閃回恢復區的可用空間大小

db_flashback_retention_target指定數據庫可以回退的時間,單位爲分鐘,默認1440分鐘,也就是一天。當然,實際上可回退的時間還決定於閃回恢復區的大小,因爲裏面保存了回退所需要的flash log。所以這個參數要和db_recovery_file_dest_size配合修改。

 

SQL> ALTER SYSTEM SET db_recovery_file_dest_size=3g SCOPE=BOTH;

System altered.

SQL> ALTER SYSTEM SET db_recovery_file_dest=' D:\app\Administrator\flash_recovery_area ' SCOPE=BOTH;

System altered.

SQL> show parameter db_recovery_file_dest

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_recovery_file_dest string D:\app\Administrator\flash_recovery_area

db_recovery_file_dest_size big integer 3852M

SQL> show parameter db_flashback

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_flashback_retention_target integer 1440

 

發佈了47 篇原創文章 · 獲贊 8 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章