物理バックアップの失敗を根絶するノウハウ:Oracleバックアップ/リカバリ講座(7)(2/4 ページ)
本記事では、Oracleデータベースのバックアップ/リストア/リカバリについて、そのアーキテクチャ、代表的なバックアップ手法、論理/物理バックアップ、RMANといった全般的な内容を解説していく。(編集部)
手順1 前回のバックアップ時に取得したRECIDが格納されたテキストファイルの存在確認
ここでは、前回バックアップされたアーカイブREDOログファイルのRECIDを、テキストファイルに保持する方法を取っています。このファイルが存在し、値が確認できれば、このRECIDに対応するアーカイブREDOログファイルのバックアップは完了していることになります。もし、初めてのバックアップ取得時などテキストファイルが存在していない場合には、v$archived_logより最大のRECIDを取得し、テキストファイルなどへ出力します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
手順2 データファイルのバックアップ
データファイルをバックアップモード(begin backup)に変更し、データファイルのバックアップを取得します。バックアップの取得後は、忘れずにバックアップモードの解除(end backup)を実行します。なお、詳細については第6回の「非一貫性バックアップ」のデータファイルのバックアップを参照してください。
手順3 アーカイブREDOログファイルのバックアップと削除
(1)オンラインREDOログファイルのアーカイブ
バックアップモード実行中に書き込まれたオンラインREDOログファイルのアーカイブを実行します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
(2)v$archived_logより最大RECIDの取得
リスト1と同じSQLでv$archived_logより最大RECIDを取得します。この際に取得した最大RECIDをテキストファイルなどに出力し保存します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
(3)アーカイブREDOログファイルのバックアップリストの作成
前回(手順1で確認した)のRECID+1から、今回(手順3の(2))取得した最大RECIDまでのアーカイブREDOログファイルについて、v$archived_logより取得したファイル名を基にバックアップリストを作成し、ファイルなどへ出力して保存します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
(4)アーカイブREDOログファイルのバックアップと削除
先ほど取得したバックアップリストを基に、アーカイブREDOログファイルをバックアップします(今回の例では/work/ONLINE_BACKUP/ARCHIVELOG_BK/)。エラーなくバックアップを取得できた場合には、バックアップ対象となったアーカイブREDOログファイルを削除してしまっても問題ありません。しかし、実際の運用では直近のバックアップが使用不可能(テープメディアに障害が発生したなど)となってしまった場合や、アーカイブREDOログファイルのリストア時間を短縮することなども考慮して、何世代分かのアーカイブREDOログファイルをディスク上に残すなど、削除タイミングを検討します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
手順4 制御ファイルのバックアップ
最後に制御ファイルのバックアップを取得します。
手順1〜4のファイルで、1世代分のバックアップが取得されたことになります。
Copyright © ITmedia, Inc. All Rights Reserved.