RMAN命令DELETE操作總結

来源:https://www.cnblogs.com/kerrycode/archive/2018/05/16/9046372.html
-Advertisement-
Play Games

本篇總結一下RMAN命令中的DELETE操作,DELETE命令用於刪除RMAN備份記錄以及相應的物理文件。 To delete physical backups and copies as well as do the following: 1: Update their repository re... ...


本篇總結一下RMAN命令中的DELETE操作,DELETE命令用於刪除RMAN備份記錄以及相應的物理文件。

 

To delete physical backups and copies as well as do the following:

1 Update their repository records in the target control file to status DELETED

2 Remove their repository records from the recovery catalog (if you use a catalog)

 

When running RMAN interactively, DELETE displays a list of the files and prompts

you for confirmation before deleting any file in the list. When reading commands from

a command file, RMAN will not prompt for confirmation.

 

DELETE removes the physical files from the backup media, deletes the record of

the backup from the recovery catalog (if RMAN is connected to a recovery catalog),

and updates the records of these backups in the control file to status DELETED

 

 

 

刪除歸檔日誌

 

 

 

刪除某個Sequence之前(包含該Sequence)的歸檔日誌

 

RMAN>delete archivelog until sequence xxx;

RMAN>delete archivelog from sequence xxx until  sequence xxx;

 

 

刪除系統時間1天以前的歸檔日誌,不會刪除閃回區有效的歸檔日誌(可以指定刪除多久日誌)

 

RMAN>delete archivelog all completed before 'sysdate-1';

 

force參數表示會刪除有效歸檔日誌

 

RMAN>delete force archivelog all completed before 'sysdate-1';

 

 

刪除某個時間段的歸檔日誌,例如刪除20天前到2天前的歸檔日誌。

 

RMAN>delete archivelog from time 'sysdate-20' until time 'sysdate-2';

RMAN>delete archivelog from time 'sysdate-1';

 

註意:此命令會刪除閃回區的有效歸檔日誌。

 

 

刪除所有的歸檔日誌。

 

RMAN>delete noprompt archivelog all;   

RMAN>delete noprompt archivelog all completed before 'sysdate'; 

 

 

 

RMAN> delete expired archivelog all;

 

 

 

 註意delete expired archivelog all  實際上此命令不會真正刪除歸檔日誌,它刪除的是那些本來RMAN以為存在但是實際上在磁碟或者磁帶上已經被刪除了文件的信息,實際刪除的只是RMAN資料庫或控制文件中的記錄;

 

 

RMAN> delete obsolete;

RMAN> delete noprompt obsolete;

 

 註意delete obsolete這個是清理過期備份,它也會刪除過期的歸檔日誌。但是特殊情況下,除閃回區有效的歸檔日誌不會刪除。

 

 上面都是使用RMAN命令刪除歸檔日誌,最後一種方式,也是最不推薦的一種方式就是使用命令從系統系統刪除歸檔日誌,使用rm刪除了備份文件後,需要執行crosscheck archivelog all命令校檢歸檔日誌是否失效。

 

 

 

 

刪除備份

 

 

刪除過期備份

 

刪除過期備份,RMAN會根據備份冗餘策略確定備份是否過期。然後刪除過期的備份。

 

RMAN> report obsolete;
RMAN> delete obsolete;
 
RMAN retention policy will be applied to the command
RMAN retention policy is set to redundancy 1
using channel ORA_DISK_1
Deleting the following obsolete backups and copies:
Type                 Key    Completion Time    Filename/Handle
-------------------- ------ ------------------ --------------------
Backup Set           1      18-MAY-17         
  Backup Piece       1      18-MAY-17           /u03/backup/backupsets/ora_df944345823_s1_s1
Control File Copy     1      18-MAY-17          /u03/backup/backupsets/controlfile.copy
 
Do you really want to delete the above objects (enter YES or NO)? yes
deleted backup piece
backup piece handle=/u03/backup/backupsets/ora_df944345823_s1_s1 recid=1 stamp=944345824
deleted control file copy
control file copy filename=/u03/backup/backupsets/controlfile.copy recid=1 stamp=944347366
Deleted 2 objects

 

刪除無效備份

 

  RMAN> delete expired backup;

 

關於delete obsolete 與delete expired backup的區別:

 

備份集有兩種狀態A(Available,RMAN認為該項存在於備份介質上), X(Expired,備份存在於控制文件或恢複目錄中,但是並沒有物理存在於備份介質上),一般要運行CROSSCHECK才能檢查,關於delete expired與delete obsolete的區別

 

  delete obsolete 會刪除舊於備份保留策略定義的備份數據同時也更新RMAN資料庫以及控制文件。

  delete expired 刪除的是那些本來RMAN以為存在但是實際上在磁碟或者磁帶上已經被刪除了的信息,刪除的只是RMAN資料庫中的記錄信息,也就是說delete expired是不會刪除備份集文件的。

 

 英文相關資料資料如下:

 

RMAN> delete obsolete;

Removes only files whose status in the repository is EXPIRED. RMAN marks backups and copies as expired when you run a CROSSCHECK command and the files are absent or inaccessible. To determine which files are expired, run a LIST EXPIRED command.

 

RMAN> delete obsolete;

 

Deletes data file backups and copies recorded in the RMAN repository that are obsolete, that is, no longer needed (see Example 2-66). RMAN also deletes obsolete archived redo log files and log backups.

RMAN determines which backups and copies of data files are no longer needed, which in turn determines when logs (and backups of logs) are no longer needed. RMAN considers the creation of a data file as a backup when deciding which logs to keep.

RMAN first uses the options specified with obsOperandList to determine which files are obsolete. If you do not specify options in obsOperandList, then RMAN uses the options specified in CONFIGURE RETENTION POLICY.

Note: DELETE OBSOLETE considers only the backup retention policy and does not use the configured archived log deletion policy to determine which logs are obsolete. In contrast, DELETE ARCHIVELOG ALL considers only the configured archived log deletion policy.

Note: If you make a backup with the KEEP UNTIL TIME clause, then this backup becomes obsolete after the specified KEEP time passes and is removed by DELETE OBSOLETE. RMAN does not consider the backup retention policy for archival backups whose KEEP time has expired.

 

 

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Nginx("engine x")是一款是由俄羅斯的程式設計師Igor Sysoev所開發高性能的 Web和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。 在高連接併發的情況下,Nginx是Apache伺服器不錯的替代品。 Nginx 安裝 一、安裝編譯工具及庫文件 二、首 ...
  • 如何啟動/停止/重啟MySQL一、啟動方式1、使用 service 啟動:service mysqld start2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld start3、使用 safe_mysqld 啟動:safe_mysqld& 二、停止1、使用 service 啟 ...
  • 本文主要介紹如何在CentOS7環境下集成Apache和SVN,完成後可以通過瀏覽器訪問SVN倉庫. 1.查看系統環境,關閉防火牆和SELinux. 2.安裝軟體包和Apache SVN模塊. 3. 驗證安裝結果. 4.驗證Apache SVN模塊是否安裝成功,需要檢查mod_dav_svn.so和 ...
  • 在做系統過程中,經常需要針對某些場景進行性能優化,那麼如何判定性能優化的效果呢?肯定需要知道優化之前Sql語句的耗時和優化之後Sql語句的耗時, 在SQL Server中,可以通過如下兩種方式來方便的知曉Sql語句執行的耗時以及IO消耗 1.使用T-Sql語句 2.使用工具的設置項 設置方法:工具- ...
  • 1 準備3台客戶機(關閉防火牆,設置靜態IP,主機名稱) 1.1 修改host文件 我們希望三個主機之間都能夠使用主機名稱的方式相互訪問而不是IP,我們需要在hosts中配置其他主機的host。因此我們在三個主機的/etc/hosts下均進行如下配置:1. 打開hosts文件 2. 配置主機host ...
  • 功能需求: 程式導入一條公告記錄時,資料庫自動記錄當前時間 錯誤現象: 程式導入一條公告記錄時,預設時間為空 解決方法: navicate12 版本中,欄位為timestamp的設置時,預設的設置為null,且在12版本中,預設值選擇項中沒有CURRENT_TIMESTAMP,需手動鍵入,如下: 手 ...
  • 1.導入導出 導入資料庫:前提:資料庫和數據表要存在(已經被創建) (1)將數據表 test_user.sql 導入到test 資料庫的test_user 表中 (2) 將資料庫 test.sql 導入到 test 資料庫test 中 (3)source命令不在控制臺下,要進入mysql下操作 導出 ...
  • 還原sql server 2012資料庫時,經常會出現: “因為資料庫正在使用,所以無法獲得對資料庫的獨占訪問權”, 我關閉了sql查詢視窗,關了連接的客戶端,關閉了瀏覽器上相關的訪問網頁,甚至關閉了IIS,然而,並沒有什麼用 百度到了一個解決方法,最終解決了問題 還原前執行 ALTER DATAB ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...