インクリメンタルバックアップと応用


rmanインクリメンタルバックアップでは、差分インクリメンタルと累積インクリメンタルの概念があり、この2つの概念はこれまで理解されていませんでした.
1、概念
差分増分:親および兄弟のバックアップ以降に変更されたすべてのデータ・ブロック、差分増分はデフォルトの差分バックアップ方式累積増分:親バックアップ以降に変更されたすべてのブロック
累積インクリメンタルは、上位バックアップ以降のすべての変化したデータ・ブロックをバックアップするため、累積インクリメンタルにはより多くのバックアップ時間が必要であり、リカバリ時間が小さくなります.差分インクリメンタルは、兄弟バックアップ以降に変化するデータ・ブロックをバックアップすることができます.バックアップ時間は短縮されますが、リカバリ時間はさらに短縮されます.Oracle 9でのインクリメンタル・バックアップでは、データベース全体のデータ・ブロックをスキャンすることによって、どのデータ・ブロックが変化したかを知る必要があります.これはコストがかかり、時間がかかるプロセスです.また、インクリメンタル・バックアップは複数の異なるバックアップ・セットを形成し、リカバリがより信頼できないため、インクリメンタル・バックアップはバージョン9で推奨されません.10 gでは、インクリメンタルバックアップが大幅に改善され、すべてのデータブロックをスキャンする必要がなくなり、どのデータブロックが変化したかを知ることができ、バックアップ効率を大幅に提示した.しかし、これらはディスクi/oを犠牲にする代わりに、oltpトランザクションシステムでは、i/oを代価としてセキュリティと高可用性を保証するかどうかを測定する必要があります.10 gはインクリメンタル統合もサポートし、インクリメンタルバックアップは7レベルのインクリメンタルをサポートします.
2、バックアップポリシーとリカバリ
rmanマルチレベルインクリメンタルバックアップをバックアップポリシーの例として使用します.
インクリメンタル・バックアップには、0レベルのバックアップが必要です.0レベルのバックアップとフル・バックアップの違いは、0レベルでインクリメンタル・リカバリに使用できますが、フル・バックアップでは使用できません.
バックアップポリシー:
eg:私たちは1週間に次のバックアップポリシーを行います.
週差増分累積増分日曜日0級0級月曜日2級2級火曜日2級2級水曜日1級木曜日2級金曜日2級土曜日2級2級日曜日0級
このようにデータベースが金曜日にダウンすると、差分増分は日曜日の0級、水曜日の1級、木曜日、金曜日の2級で回復でき、累積増分は日曜日の0級、金曜日の2級で回復できます.以上は1週間のバックアップポリシーです.長期的なバックアップポリシーを行うと、バックアップの時間を延長するだけで新しいバックアップポリシーが得られます.具体的には、自分のバックアップとリカバリが受け入れられる程度を見る必要があります.最後のバックアップポリシーの典型的な例を参照してください.
バックアップコマンドは次のとおりです.
レベル0バックアップbackup incremental level 0 database;一級差異増分backup incremental level 1 database;一級累積増分backup incremental level 1 cumulative database;
バックアップ・ポリシーの典型的な例:
半年ごとにデータベースのフルバックアップ(すべてのデータと読み取り専用表領域を含む)を行い、毎月ゼロレベルのバックアップ(読み取り専用表領域を含まない)を行います.毎週1回1レベルのバックアップを行い、毎日2レベルのバックアップを行います.
データベースの変更によっては、CATALOGディレクトリを再同期し、データファイルの追加などの再バックアップまたは表領域の読み取り専用の変更などの再バックアップを行う必要があります.アーカイブ・ログのバックアップと定期的なバックアップのテープへのアーカイブを推奨します.
データベースのフル・バックアップ・スクリプト
    
    
    
    
run{ allocate channel c1 type disk ; allocate channel c2 type disk ; allocate channel c3 type disk ; backup full tag ‘dbfull’ format ‘ / u01 / oradata / backup / full % u_ % s_ % p’ database include current controlfile; sql ‘ alter system archive log current ’; backup fileaperset 3 format ‘ / u01 / oradata / backup / arch % u_ % s_ % p’ archivelog all delete input; # , release channel c1; release channel c2; release channel c3; }

(注意:delete all inputは、バックアップされたアーカイブ・ログを削除するためにアーカイブ・ログをバックアップする場合にのみ使用できます.英語のコメントは次のとおりです.
Deletes the input files after successfully backing them up. Specify this option only when backing up archived redo logs, datafile copies (COPY OF or DATAFILECOPY), or backup sets. The BACKUP ARCHIVELOG command only backs up one copy of each distinct log sequence number, so if the DELETE INPUT option is used without the ALL keyword, RMAN only deletes the copy of the file that it backs up. Specifying the DELETE INPUT option is equivalent to issuing the DELETE command for the input files. When backing up archived redo logs, RMAN uses the configured settings to determine whether an archived redo log can be deleted (CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP). The ALL option applies only to archived redo logs. If you run DELETE ALL INPUT, then the command deletes all copies of corresponding archived redo logs or datafile copies that match the selection criteria in the BACKUP command (as shown in Example 2-19). For example, if you specify the SEQUENCE n clause, then RMAN deletes all archived redo logs with same sequence number n.
)    
 
レベル0バックアップのスクリプト
    
    
    
    
run{ allocate channel c1 type disk ; allocate channel c2 type disk ; allocate channel c3 type disk ; backup incremental level 0 tag ‘db0’ format ‘ / u01 / oradata / backup / db0 % u_ % s_ % p’ database skip readonly; sql ‘ alter system archive log current ’; backup fileaperset 3 format ‘ / u01 / oradata / backup / arch % u_ % s_ % p’ archivelog all delete input; # , release channel c1; release channel c2; release channel c3; }

同じように、一級バックアップ、二級バックアップのスクリプト、例えば一級バックアップのスクリプトが得られます.
    
    
    
    
run{ allocate channel c1 type disk ; allocate channel c2 type disk ; allocate channel c3 type disk ; backup incremental level 1 tag ‘db1’ format ‘ / u01 / oradata / backup / db1 % u_ % s_ % p’ database skip readonly; sql ‘ alter system archive log current ’; backup fileaperset 3 format ‘ / u01 / oradata / backup / arch % u_ % s_ % p’ archivelog all delete input; # , release channel c1; release channel c2; release channel c3; }

上記のバックアップポリシーに従うと、毎日のバックアップに必要なデータ量は1日の変更量しかありません.一方、リカバリを行う場合は、その月の1つのレベル0バックアップ+3つのレベル1バックアップ+6つのレベル2バックアップ+当日のアーカイブファイルをリカバリする必要があります.このようなリカバリ時間を受け入れられない場合は、レベル0のバックアップ間の時間間隔を短縮できます.バックアップのたびに、原則としてそのバックアップポイントより前のアーカイブログは削除できますが、さらなるセキュリティおよび今後の必要性(LOGMNRを使用して必要な情報を検索するなど)のために、条件があれば、アーカイブログは許容できる時点に保存し、テープなどの安価なアクセスデバイスに保存できることをお勧めします.