2.15 DELETE
目的
DELETE
コマンドを使用すると、次の操作を実行できます。
-
物理バックアップおよびコピーを削除します。
-
疎データベースの不要なバックアップを削除します。
-
ターゲット制御ファイル内のリポジトリ・レコードを更新して、ファイルが削除されていることを示します。たとえば、
V$BACKUP_PIECE.STATUS
のバックアップ・ピースのレコードに、値D
が表示されます。 -
削除されたファイルのリポジトリ・レコードをリカバリ・カタログから削除します(カタログを使用している場合)。たとえば、
RC_BACKUP_PIECE
には、削除されたバックアップ・ピースの行が含まれなくなります。
関連項目:
BACKUP ... DELETE INPUTコマンドについて学習するには、「
BACKUP」
を参照してください。
前提条件
RMANがターゲット・データベースに接続していて、そのデータベースがマウントまたはオープン状態である必要があります。
RMANは、構成されているすべてのチャネルを使用して削除を実行します。自動チャネルが構成されていないデバイス上のファイルに対してDELETE
を使用する場合は、ALLOCATE CHANNEL FOR MAINTENANCE
を使用する必要があります。たとえば、SBTチャネルでバックアップを作成したが、構成されているのがディスク・チャネルのみであれば、DELETE
用にSBTチャネルを手動で割り当てる必要があります。ディスク専用のファイルに対してDELETE
を使用する場合は、自動または手動で割り当てられたメンテナンス・チャネルが必要です。
プリプラグイン・バックアップの場合、CDBは読取り/書込みモードでオープンしている必要があります。また、SYSDBA
権限またはSYSBACKUP
権限を持つ共通ユーザーとして接続する必要があります。
使用上のノート
CROSSCHECK
を実行してバックアップおよびコピーのリポジトリでのステータスを更新してから、DELETE
を実行して目的のファイルを削除することをお薦めします。RMANを対話方式で実行している場合にDELETE
を実行すると、ファイルのリストが表示され、そのリスト内のファイルを削除する前に確認のプロンプトが表示されます。確認すると、RMANでは削除されるたびに各項目が表示されます。コマンド・ファイルからコマンドを読み取る場合は、RMANによって確認のプロンプトは表示されません。
RMANリポジトリに記録されているバックアップおよびコピーのステータスは、LIST
、V$
ビュー、またはリカバリ・カタログ・ビュー(カタログを使用している場合)で確認できます。バックアップのリポジトリ・レコードに、バックアップの物理的な状態が反映されていないことがあります。たとえば、ディスク・バックアップを、Linuxのrm
コマンドで削除する場合です。バックアップ・レコードはrm
では更新できないため、RMANリポジトリには、ファイルが存在していなくても使用可能と表示されます。
ステータス値が異なるファイルに対するDELETEコマンドの動作
表2-5に、FORCE
オプションが指定されていない場合のDELETE
の動作を示します。
表2-5 FORCEオプションが指定されていない場合のDELETEコマンドの動作
リポジトリでの状態 | 物理的な状態 | DELETEコマンドの動作 |
---|---|---|
|
メディア上に見つからない |
オブジェクトは削除されず、ジョブの終了時に一致しないオブジェクトのリストがレポートされます。RMANでは、リポジトリの状態は更新されません。 |
|
メディア上で見つかる |
オブジェクトは削除されず、ジョブの終了時に一致しないオブジェクトのリストがレポートされます。RMANでは、リポジトリの状態は更新されません。 |
|
すべて |
リポジトリ・レコードが削除され、存在する場合はオブジェクトが削除されます。I/Oエラーはすべて無視されます。 |
Data Guard環境でのバックアップの削除
バックアップの関連付けとアクセス可能性の違いについては、「Data Guard環境でのRMANのバックアップ」を参照してください。Data Guard環境では、バックアップまたはコピーを作成するデータベースはファイルに関連付けられます。Data Guard環境のどのデータベースに接続されていても、バックアップに接続可能であれば、CHANGE
、DELETE
、CROSSCHECK
などのメンテナンス・コマンドをバックアップに使用できます。通常、RMANでは、データベース上で作成されたテープ・バックアップはその環境のすべてのデータベースにアクセス可能であるとみなされますが、ディスク・バックアップは作成元のデータベースのみにアクセス可能であるとみなされます。
削除が正常に行われると、RMANはそのファイルのメタデータを削除します。ファイルが別のデータベースに関連付けられている場合も同様です。削除が正常に行われず、そのファイルがData Guard環境の別のデータベースに関連付けられている場合は、ファイルに関連付けられたデータベースにTARGET
として接続した状態で、同じDELETE
コマンドを実行するように求めるプロンプトが表示されます。ファイルのメタデータを削除するには、DELETE ... FORCE
を使用する必要があります。
構文
delete::=
(maintSpec::=、obsOperandList::=、deviceSpecifier::=)
(listObjList::=、archivelogRecordSpecifier::=、maintQualifier::=、deviceSpecifier::=、recordSpec::=)
セマンティクス
構文要素 | 説明 |
---|---|
|
指定したファイルを(メディア上に存在するかどうかに関係なく)削除し、リポジトリ・レコードを削除します(例2-80を参照)。 削除されたオブジェクトに関するI/Oエラーは無視されます。また、RMANでは、 |
|
先にファイル・リストを表示したり確認を求めるプロンプトを表示せずに、指定したファイルを削除します。 |
|
プリプラグイン・バックアップを削除し、そのリポジトリ・レコードを削除します。 |
|
リポジトリ内のステータスが
|
バックアップおよびコピーを削除します。
削除されたPDBのバックアップを削除する場合、PDBをそのGUIDで指定します。 ノート: ノート: CDBでは、アーカイブREDOログを削除するため、 関連項目: 「 |
|
Data Guard環境の指定した ノート: RMANは、指定した ノート: 関連項目: この句のオプションについては、「 |
|
|
RMANリポジトリに記録されているデータファイルのバックアップとコピーのうち、不要になったものを削除します(例2-78を参照)。また、不要なアーカイブREDOログ・ファイルおよびログ・バックアップもRMANによって削除されます。 RMANでは、データファイルのうち不要になったバックアップとコピーが判別されてから、ログ(およびそのバックアップ)が不要になる時期が判断されます。RMANでは、データファイルの作成は、保存するログの決定時にバックアップとみなされます。 RMANでは、まず ノート: ノート: ノート: |
不要になるバックアップとコピーの判断基準を指定します。 関連項目: 「 |
|
DEVICE TYPE deviceSpecifier |
削除の対象を、指定したデバイス・タイプで作成された不要なバックアップとコピーのみに制限します。 関連項目: |
例
例2-77 期限切れのバックアップの削除
この例では、構成済のsbt
チャネルを使用して、1か月以上経過している表領域users
の期限切れバックアップの有無についてメディア・マネージャをチェックし、該当するリカバリ・カタログ・レコードを削除します。
CROSSCHECK BACKUPSET OF TABLESPACE users DEVICE TYPE sbt COMPLETED BEFORE 'SYSDATE-31'; DELETE NOPROMPT EXPIRED BACKUPSET OF TABLESPACE users DEVICE TYPE sbt COMPLETED BEFORE 'SYSDATE-31';
例2-78 不要なバックアップの削除
この例では、データベースのリカバリに不要になったバックアップとコピーを、先週の任意のSCNまで削除します。また、RMANでは、不要になったアーカイブREDOログ・ファイルも削除されます。
DELETE NOPROMPT OBSOLETE RECOVERY WINDOW OF 7 DAYS;
例2-79 バックアップ済のアーカイブREDOログ・ファイルの削除
RMANの設定を次のように構成しているとします。
CONFIGURE DEFAULT DEVICE TYPE TO sbt; CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DEVICE TYPE sbt;
次のDELETE
コマンドは、構成済の削除方針(ログはテープに2回バックアップする必要がある)を満たす必要がない、ディスク上のすべてのアーカイブREDOログ・ファイルを削除します(次に出力を示します)。
RMAN> DELETE ARCHIVELOG ALL; allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=84 device type=DISK List of Archived Log Copies for database with db_unique_name PROD ===================================================================== Key Thrd Seq S Low Time ------- ---- ------- - --------- 107 1 4 A 12-FEB-13 Name: /orcva/PROD/archivelog/2013_02_12/o1_mf_1_4_2x28bpcm_.arc 108 1 5 A 12-FEB-13 Name: /orcva/PROD/archivelog/2013_02_12/o1_mf_1_5_2x28g7s9_.arc 109 1 6 A 12-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_6_2x3bbqym_.arc 157 1 7 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_7_2x3w2cvs_.arc 164 1 8 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_8_2x3w40vr_.arc 171 1 9 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_9_2x3w8pf7_.arc 318 1 10 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_10_2x3zx6d9_.arc 330 1 11 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_11_2x403wco_.arc 448 1 12 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_12_2x40wn6x_.arc 455 1 13 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_13_2x412s3m_.arc 583 1 14 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_14_2x428p9d_.ar 638 1 15 A 13-FEB-13 Name: /orcva/PROD/archivelog/2013_02_13/o1_mf_1_15_2x42f0gj_.arc Do you really want to delete the above objects (enter YES or NO)?
例2-80 バックアップ・セットの強制削除
次の例では、タグweekly_bkup
を持つバックアップ・セットのコピーを削除します。
RMAN> DELETE NOPROMPT BACKUPSET TAG weekly_bkup;
リポジトリにはバックアップ・セットがAVAILABLEとして表示されても、オブジェクトは実際にはメディア上で使用できないため、RMANでは警告が表示されます。
List of Backup Pieces BP Key BS Key Pc# Cp# Status Device Type Piece Name ------- ------- --- --- ----------- ----------- ---------- 809 806 1 1 AVAILABLE SBT_TAPE 0ri9uu08_1_1 RMAN-06207: WARNING: 1 objects could not be deleted for SBT_TAPE channel(s) due RMAN-06208: to mismatched status. Use CROSSCHECK command to fix status RMAN-06210: List of Mismatched objects RMAN-06211: ========================== RMAN-06212: Object Type Filename/Handle RMAN-06213: --------------- --------------------------------------------------- RMAN-06214: Backup Piece 0ri9uu08_1_1
次のコマンドを実行すると、RMANによってバックアップ・セットが強制的に削除されます(例には出力例も含まれます)。
RMAN> DELETE FORCE NOPROMPT BACKUPSET TAG weekly_bkup; using channel ORA_SBT_TAPE_1 using channel ORA_DISK_1 List of Backup Pieces BP Key BS Key Pc# Cp# Status Device Type Piece Name ------- ------- --- --- ----------- ----------- ---------- 809 806 1 1 AVAILABLE SBT_TAPE 0ri9uu08_1_1 deleted backup piece backup piece handle=0ri9uu08_1_1 RECID=26 STAMP=614430728 Deleted 1 objects