手动删除RMAN备份的方法

本文详细介绍了使用RMAN命令查询数据库备份集,并通过指定备份片序号进行删除操作。同时,阐述了检查备份物理文件状态及删除过期备份的方法,包括物理文件不存在的备份和已过期的备份。最后对比了`deleteexpiredbackup`与`deleteobsolete`命令的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查询

RMAN> list backup;

using target database control file instead of recovery catalog

List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
37      Full    9.33M      DISK        00:00:00     29-MAY-15      
        BP Key: 37   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135312
        Piece Name: /home/oracle/backup/20150529135121/ZGW_cntrl_42_1_42
  Control File Included: Ckp SCN: 1088993      Ckp time: 29-MAY-15

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
38      Full    592.95M    DISK        00:00:00     29-MAY-15      
        BP Key: 38   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135134
        Piece Name: /home/oracle/backup/20150529135121/ZGW_20150529_18q85g77_1_1
  List of Datafiles in backup set 38
  File LV Type Ckp SCN    Ckp Time  Name
  ---- -- ---- ---------- --------- ----
  1       Full 1088865    29-MAY-15 /opt/oracle/oradata/zgw/system01.dbf
  4       Full 1088865    29-MAY-15 /opt/oracle/oradata/zgw/users01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
39      Full    80.00K     DISK        00:00:00     29-MAY-15      
        BP Key: 39   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135318
        Piece Name: /home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak
  SPFILE Included: Modification time: 29-MAY-15
  SPFILE db_unique_name: ZGW

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
40      Full    398.51M    DISK        00:00:00     29-MAY-15      
        BP Key: 40   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135134
        Piece Name: /home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1
  List of Datafiles in backup set 40
  File LV Type Ckp SCN    Ckp Time  Name
  ---- -- ---- ---------- --------- ----
  2       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/sysaux01.dbf
  3       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/undotbs01.dbf

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
41      1.50M      DISK        00:00:00     29-MAY-15      
        BP Key: 41   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984400_44

  List of Archived Logs in backup set 41
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    18      1087129    29-MAY-15 1088858    29-MAY-15

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
42      723.50K    DISK        00:00:00     29-MAY-15      
        BP Key: 42   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984401_45

  List of Archived Logs in backup set 42
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    19      1088858    29-MAY-15 1089038    29-MAY-15

指定备份片序号删除

RMAN> delete backupset 37,38;

allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=36 device type=DISK

List of Backup Pieces
BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
37      37      1   1   AVAILABLE   DISK        /home/oracle/backup/20150529135121/ZGW_cntrl_42_1_42
38      38      1   1   AVAILABLE   DISK        /home/oracle/backup/20150529135121/ZGW_20150529_18q85g77_1_1

Do you really want to delete the above objects (enter YES or NO)? y
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/ZGW_cntrl_42_1_42 RECID=37 STAMP=880985777
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/ZGW_20150529_18q85g77_1_1 RECID=38 STAMP=880985777
Deleted 2 objects

操作系统命令删除后

[oracle@Oracle11_2 20150529135121]$ ls
backupall_20150529135121.log  %_spfile_1bq85gae_1_1.bak  ZGW_20150529_19q85g78_1_1  ZGW_arc_880984400_44  ZGW_arc_880984401_45
[oracle@Oracle11_2 20150529135121]$ rm  ZGW_*
[oracle@Oracle11_2 20150529135121]$ ls
backupall_20150529135121.log  %_spfile_1bq85gae_1_1.bak
[oracle@Oracle11_2 20150529135121]$ 

查询

RMAN> list backup;


List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
39      Full    80.00K     DISK        00:00:00     29-MAY-15      
        BP Key: 39   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135318
        Piece Name: /home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak
  SPFILE Included: Modification time: 29-MAY-15
  SPFILE db_unique_name: ZGW

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
40      Full    398.51M    DISK        00:00:00     29-MAY-15      
        BP Key: 40   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135134
        Piece Name: /home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1
  List of Datafiles in backup set 40
  File LV Type Ckp SCN    Ckp Time  Name
  ---- -- ---- ---------- --------- ----
  2       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/sysaux01.dbf
  3       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/undotbs01.dbf

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
41      1.50M      DISK        00:00:00     29-MAY-15      
        BP Key: 41   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984400_44

  List of Archived Logs in backup set 41
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    18      1087129    29-MAY-15 1088858    29-MAY-15

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
42      723.50K    DISK        00:00:00     29-MAY-15      
        BP Key: 42   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984401_45

  List of Archived Logs in backup set 42
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    19      1088858    29-MAY-15 1089038    29-MAY-15

检查并删除

RMAN> crosscheck backup; --检查备份物理文件状态

using channel ORA_DISK_1
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak RECID=39 STAMP=880985777
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1 RECID=40 STAMP=880985777
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/backup/20150529135121/ZGW_arc_880984400_44 RECID=41 STAMP=880985777
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/backup/20150529135121/ZGW_arc_880984401_45 RECID=42 STAMP=880985777
Crosschecked 4 objects


RMAN> list expired backup;  --查看检查结果


List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
40      Full    398.51M    DISK        00:00:00     29-MAY-15      
        BP Key: 40   Status: EXPIRED  Compressed: NO  Tag: TAG20150529T135134
        Piece Name: /home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1
  List of Datafiles in backup set 40
  File LV Type Ckp SCN    Ckp Time  Name
  ---- -- ---- ---------- --------- ----
  2       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/sysaux01.dbf
  3       Full 1088866    29-MAY-15 /opt/oracle/oradata/zgw/undotbs01.dbf

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
41      1.50M      DISK        00:00:00     29-MAY-15      
        BP Key: 41   Status: EXPIRED  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984400_44

  List of Archived Logs in backup set 41
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    18      1087129    29-MAY-15 1088858    29-MAY-15

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
42      723.50K    DISK        00:00:00     29-MAY-15      
        BP Key: 42   Status: EXPIRED  Compressed: NO  Tag: TAG20150529T135320
        Piece Name: /home/oracle/backup/20150529135121/ZGW_arc_880984401_45

  List of Archived Logs in backup set 42
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    19      1088858    29-MAY-15 1089038    29-MAY-15

RMAN> delete expired backup;  --删除状态为expired的备份,expired是指物理文件不存在的备份集,obsolete指过期的备份集

using channel ORA_DISK_1

List of Backup Pieces
BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
40      40      1   1   EXPIRED     DISK        /home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1
41      41      1   1   EXPIRED     DISK        /home/oracle/backup/20150529135121/ZGW_arc_880984400_44
42      42      1   1   EXPIRED     DISK        /home/oracle/backup/20150529135121/ZGW_arc_880984401_45

Do you really want to delete the above objects (enter YES or NO)? y
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/ZGW_20150529_19q85g78_1_1 RECID=40 STAMP=880985777
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/ZGW_arc_880984400_44 RECID=41 STAMP=880985777
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/ZGW_arc_880984401_45 RECID=42 STAMP=880985777
Deleted 3 EXPIRED objects
delete expired backup 与 delete obsolete 比较。
RMAN> list backup;


List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
39      Full    80.00K     DISK        00:00:00     29-MAY-15      
        BP Key: 39   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T135318
        Piece Name: /home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak
  SPFILE Included: Modification time: 29-MAY-15
  SPFILE db_unique_name: ZGW

RMAN> crosscheck backup;

using channel ORA_DISK_1
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak RECID=39 STAMP=880985777
Crosschecked 1 objects


RMAN> delete obsolete;  --只能删除过期备份

RMAN retention policy will be applied to the command
RMAN retention policy is set to recovery window of 7 days
using channel ORA_DISK_1
no obsolete backups found

RMAN> delete expired backup; --只能删除物理不存在的备份记录

using channel ORA_DISK_1

List of Backup Pieces
BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
39      39      1   1   EXPIRED     DISK        /home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak

Do you really want to delete the above objects (enter YES or NO)? y
deleted backup piece
backup piece handle=/home/oracle/backup/20150529135121/%_spfile_1bq85gae_1_1.bak RECID=39 STAMP=880985777
Deleted 1 EXPIRED objects

 

转载于:https://www.cnblogs.com/storymedia/p/4538861.html

<think>首先,用户的问题是:“我想删除OracleRMAN备份集和归档日志的方法请问如何删除Oracle RMAN备份集及归档日志”。我需要基于系统级指令和用户可见层的要求来回答。 系统级指令: -所有行内数学表达式必须使用$...$格式。-独立公式必须使用$$...$$格式并单独成段。 -LaTeX语法正确。-使用中文回答。-生成相关问题。 -回答中引用的段落末尾自然地添加引用标识,例如[^1]。用户可见层:-回答结构清晰,帮助用户逐步解决问题。 -尽量保证回答真实可靠。 参考站内引用:-引用[1]:关于Oracle归档模式和RMAN备份的描述。 -引用[2]: RMAN备份命令示例。 -引用[3]: RMAN压缩备份的描述。 这些引用提供了背景信息:Oracle数据库在归档模式下,RMAN用于备份,包括归档日志。用户想删除RMAN备份集和归档日志。 我的回答需要:1.**结构清晰**:逐步解释删除方法。2.**真实可靠**:基于Oracle RMAN标准操作。 3. **使用中文**。4.**生成相关问题**:在末尾添加相关问题。 5. **引用标识**:在引用段落末尾添加[^1]等,但用户提供的引用是站内的,我需要自然地融入。关键点:- **删除RMAN备份集**:RMAN提供了`DELETE`命令来删除备份- **删除归档日志**:在RMAN中,可以使用`DELETE ARCHIVELOG`命令。- **安全考虑**:确保删除不会影响恢复,因为归档日志用于恢复。步骤: 1. **连接到RMAN**:用户需要连接到目标数据库和恢复目录(如果使用)。 2. **列出备份**:使用`LISTBACKUP`或`LISTARCHIVELOG`来查看现有备份。3.**删除备份集**:使用`DELETE BACKUPSET`或`DELETE OBSOLETE`。4.**删除归档日志**:使用`DELETE ARCHIVELOG`。 5. **确认删除**:确保删除后没有恢复需求。 融入引用:-引用[1]提到归档模式的重要性:归档日志用于灾难恢复。所以在删除时,要小心。 -引用[2]和[3]涉及备份命令,但我可以引用它们来支持我的回答。生成相关问题: -类似于示例,添加3个相关问题。回答结构: 1. **引言**:简要解释删除的原因和风险。 2. **步骤**:分步说明如何删除。 3. **注意事项**:提醒用户备份和恢复考虑。 4. **相关问题**:在末尾添加。 确保LaTeX:用户的问题中没有数学表达式,所以可能不需要。但如果提到任何公式,使用$...$格式。例如,如果有版本号,但可能不需要。最终回答大纲: -开头:确认问题。-步骤1:连接到RMAN-步骤2:删除备份集。-步骤3:删除归档日志。 -步骤4:验证删除-注意事项:基于引用[1],强调归档日志的重要性。-相关问题。</think>### 如何删除 Oracle RMAN 备份集及归档日志 删除 Oracle RMAN 备份集和归档日志是数据库维护的重要任务,但需谨慎操作,以免影响数据恢复能力。在归档模式下,Oracle 数据库会保留归档日志用于灾难恢复[^1]。以下是基于 Oracle RMAN 标准操作的分步方法,确保过程安全可靠。操作前,请确保您具有 SYSDBA 权限,并备份关键数据以防意外。 #### 步骤 1: 连接到 RMAN 首先,启动 RMAN 并连接到目标数据库。如果使用恢复目录,一并连接。 ```bash rman target / catalog rman_user/password@recovery_catalog ``` - `target /` 表示连接到本地数据库实例。 - `catalog` 参数用于指定恢复目录(可选)。 #### 步骤 2: 删除 RMAN 备份RMAN 备份集包括数据文件、控制文件等的备份。使用 `DELETE` 命令删除指定备份集。 - **列出备份集**:查看现有备份,确认要删除备份集 ID。 ```sql LIST BACKUP SUMMARY; ``` - **删除备份集**:根据备份集 ID 或使用条件删除。 ```sql DELETE BACKUPSET <backupset_id>; -- 替换为具体 ID ``` 或删除所有过期备份(推荐,避免误删有效备份): ```sql DELETE OBSOLETE; ``` `DELETE OBSOLETE` 会基于保留策略自动删除不再需要的备份[^2]。例如,如果保留策略设置为 7 天,RMAN删除超过 7 天的备份。 #### 步骤 3: 删除归档日志 归档日志存储在归档目录中,删除前需确保它们已备份或不再需要。使用 `DELETE ARCHIVELOG` 命令。 - **列出归档日志**:查看归档日志序列和位置。 ```sql LIST ARCHIVELOG ALL; ``` - **删除归档日志**:删除指定日志或基于条件删除。 ```sql DELETE ARCHIVELOG UNTIL TIME 'SYSDATE-7'; -- 删除 7 天前的归档日志 ``` 或删除所有已备份的归档日志(安全方式): ```sql DELETE ARCHIVELOG ALL BACKED UP 1 TIMES TO DEVICE TYPE DISK; ``` 此命令确保只删除至少备份过一次的日志,防止数据丢失[^1]。 #### 步骤 4: 验证删除 删除后,验证操作是否成功。 - 重新列出备份和归档日志: ```sql LIST BACKUP; LIST ARCHIVELOG ALL; ``` - 检查 RMAN 报告: ```sql REPORT OBSOLETE; -- 查看是否还有过期备份 ``` #### 注意事项 - **风险控制**:删除归档日志前,确保它们已备份到磁带或其他介质。归档日志是灾难恢复的关键,非归档模式下日志切换时会丢弃,但归档模式下必须手动管理[^1]。 - **压缩备份**:如果备份集使用压缩(如 Oracle 10.2 的 Unused Block Compression),删除时不影响压缩逻辑,但需确保备份集完整[^3]。 - **保留策略**:设置 RMAN 保留策略可自动化删除。例如: ```sql CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; ``` 这会让 RMAN 自动删除超过恢复窗口的备份- **性能影响**:删除操作可能占用 I/O 资源,建议在低峰期执行。 - **错误处理**:如果删除失败(如权限不足),检查 RMAN 日志并确保数据库处于 MOUNT 状态。 通过以上步骤,您可以安全删除备份集和归档日志,释放存储空间。定期执行此类维护能优化数据库性能[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值