rmanシリーズの7問rman

6394 ワード

第1問:インクリメンタルバックアップを選択しますか?


すべてのインクリメンタル・バックアップは、まずレベル0のバックアップを作成する必要があります.レベル0のバックアップはフル・ライブラリ・バックアップに相当しますが、フル・ライブラリ・バックアップにはインクリメンタル・バックアップ・ポリシーが含まれていないため、両者は同じではありません.
users表領域のインクリメンタルバックアップを作成するには、次の手順に従います.
RMAN> backup incremental level=0 tablespace users;

RMAN> backup incremental level=1 tablespace users;

「≪インクリメンタル・バックアップ|Incremental Backup|emdw≫」を選択した場合は、ブロック変更追跡を必ず有効にしてください.そうしないと、ブロック・レベルのチェックによってバックアップ時間が遅くなります.
ブロック変更追跡は、次の文で有効にできます.
sys@ORCL>alter database enable block change tracking;

次の文を使用して、ブロック変更追跡を有効にするかどうかを問い合せることができます.
sys@ORCL>select status from v$block_change_tracking;

ブロック変更追跡は、次の文で無効にできます.
sys@ORCL>alter database disable block change tracking;

バックアップとリカバリは、バックアップ時間が短くなり、リカバリ時にリカバリ操作を完了するには、バックアップとリカバリが複数のバックアップセットを読まなければなりません.

第2問:rmanバックアップセット保存ポリシーを使用しますか?


rmanは、時間ベースと冗長数ベースの2つのバックアップ保存ポリシーを提供します.
時間に基づいて、つまりデータベースが最も早く数日前に復元されることを望んでいます.
RMAN>configure retention policy to recovery window of n days;

冗長数ベース
RMAN>configure retention policy to redundancy n;

ファイルに記録された保存時間を制御することは、バックアップ保存ポリシーに影響を与える可能性があります.
Nocatalogで作成されたバックアップの場合、rmanのバックアップセット情報はターゲットデータベースの制御ファイルに保存されますが、oracleデータベースの制御ファイルは無限に拡張されているわけではありません.保存可能なレコードも限られています.制御ファイル保存rmanバックアップセット情報は初期化パラメータcontrol_file_record_keep_time.日単位でデフォルトは7日です.7日を超え、スペースが不足している場合は、rmanの情報が上書きされる可能性があります.だから、アドバイス、control_file_record_keep_time初期化パラメータはrmanのバックアップ保存時間より大きい.
現在の制御ファイル、記録可能数と記録済み数、v$controlfile_を使用可能record_section取得.

3番目の質問:複数のチャネルを使用しますか?


rmanは2つのバックアップデバイスをサポートします:SBT(テープ)とDisk(任意のディスクの東)
allocate channel:チャネル=1:1.このコマンドはrunブロックでのみ実行できます.
RMAN>run{
allocate channel c1 device type disk format '/u01/app/oracle/backup/cn_%U';
backup tablespace users;
}

rmanはrunブロックの実行が完了すると自動的にチャネルを解放します.

第四問:複合バックアップを有効にしますか?


複合バックアップ、すなわち指定された場所に指定された部数を生成します.デフォルトのflash_recovery_areaは複合バックアップを有効にできません.
RMAN> backup copies 2 tablespace users;

Starting backup at 06-AUG-12
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00004 name=/u01/app/oracle/oradata/ORCL/datafile/o1_mf_users_8050fkdh_.dbf
channel ORA_DISK_1: starting piece 1 at 06-AUG-12
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 08/06/2012 10:56:20
ORA-19806: cannot make duplex backups in recovery area

バックアップシートの名前を指定する必要があります.
RMAN> backup copies 2 tablespace users format '/u01/app/oracle/flash_recovery_area/ORCL/think_%U';

Starting backup at 06-AUG-12
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00004 name=/u01/app/oracle/oradata/ORCL/datafile/o1_mf_users_8050fkdh_.dbf
channel ORA_DISK_1: starting piece 1 at 06-AUG-12
channel ORA_DISK_1: finished piece 1 at 06-AUG-12 with 2 copies and tag TAG20120806T105802
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/think_04nhv5pq_1_1 comment=NONE
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/think_04nhv5pq_1_2 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 06-AUG-12

runブロックでset backup copies nを利用することもできます
RMAN> run{
2> set backup copies 2;
3> backup tablespace users format '/home/oracle/think_%U','/u01/app/oracle/flash_recovery_area/ORCL/think_%U';
4> };

第五問:バックアップセットのプロパティを設定しますか?


前述したように、チャネルの割り当て時にバックアップシート名を指定するか、バックアップコマンドを実行するときにバックアップシート名を指定します.もちろん、バックアップセットに別名を付けることもできます.
RMAN>backup tablespace users tag tbs_think;

rmanがチャネルを割り当てるとき、パラメータmaxpiecesizeは、バックアップシートのサイズを指定するために使用されます.
RMAN>run{
allocate channel c1 device type disk maxpiecesize=10m format '/u01/app/oracle/backup/think_%U';
backup datafile 1;
}

このように、バックアップシート1枚あたりのサイズは10 mを超えません.

第六問:rmanリカバリディレクトリを使用しますか?


rmanバックアップセットメタデータを格納するデータベース、すなわちrmanリカバリディレクトリ.リカバリ・ディレクトリをターゲット・データベースに配置しないことを強くお勧めします.
リカバリディレクトリの作成:
1)独立した表領域を作成するには、次の手順に従います.
sys@ORCL> create tablespace rmantbs datafile '/u01/app/oracle/flash_recovery_area/ORCL/rmantbs01.dbf' size 50m;

Tablespace created.

2)バックアップ情報を記録し、関連権限を付与するための独立したschemaを作成する
sys@ORCL> grant connect,resource,recovery_catalog_owner to rmanct identified by rmanct;    

Grant succeeded.

3)rmanでcatalogを作成する
[oracle@localhost ~]$ rman catalog rmanct/rmanct     

Recovery Manager: Release 10.2.0.1.0 - Production on Mon Aug 6 11:45:25 2012

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

connected to recovery catalog database

RMAN> create catalog tablespace rmantbs;

recovery catalog created

リカバリ・ディレクトリを使用する前に、ターゲット・データベースはリカバリ・ディレクトリに登録する必要があります.1つのリカバリ・ディレクトリでは、複数のターゲット・データベースに同時にサービスを提供できます.
RMAN>rman target / catalog rmanct/rmanct@bakdb

次のコマンドでデータベースを登録できます.
RMAN>register database;

次のコマンドでデータベースをログアウトできます.
RMAN>unregister database

もちろん、ターゲット・データベースがリカバリ・ディレクトリにリモート接続するには、tnsnameを構成する必要があります.ora.
ターゲット・データベースがリカバリ・ディレクトリに登録されているにもかかわらず、接続時にcatalogモードで接続されていない場合、バックアップ情報はターゲット・データベースの制御ファイルに格納され、nocatalogモードに相当します.
DBAが管理するデータベースが多い場合はcatalogを使用することをお勧めします.これにより、リカバリディレクトリを個別にバックアップすればよいだけです.1つまたは少ない場合はnocatalogで十分です.

第七問:バックアップセットを圧縮しますか?

RMAN>backup as compressed backupset tablespace users;

圧縮バックアップセットは確かに時間で空間を変えます.ストレージスペースはありますが、バックアップとリカバリの時間が長くなります.