OracleマスターSilver 12ｃ データベースバックアップの実行

※用語はなるべく、Oracle® Databaseリファレンス　12c リリース1 (12.1) より抜粋しております。

【重要】：試験最重要ポイント
【理解】：試験問題を解くために必要な理解
太字：試験重要ポイント
赤字：最低限押さえておきたい知識

■公式チェックリストより出題範囲
データベースのバックアップの実行
・一貫性のあるデータベースのバックアップを作成する
・データベースを停止せずにデータベースをバックアップする
・増分バックアップを作成する
・データベースのバックアップを自動化する
・バックアップを管理する
－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－

###要点
バックアップ、リカバリーに関係するアーキテクチャは頻出トピック。
何度も復習し、用語が出てきたらそれを他人に説明できるようになるよう理解しよう

出題範囲に書かれていることが全て、かつ最重要。

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－

###データベースバックアップの実行

####一貫性バックアップ
　すべてのバックアップファイルを整合性が取れた状態で取得すること。
データベースを停止していることから、**コールドバックアップ、オフラインバックアップ**とも呼ばれる。
データベース全体をバックアップすることから、**全体バックアップ**とも呼ばれる。

【重要】
一貫性バックアップの特徴
・データベースがオープンされていないこと
・すべてのREDOログファイルが適用済み
・リストア後、すぐにオープンできる。

####非一貫性バックアップ
　データベースをオープンしたままで、一部のデータファイル、制御ファイルのバックアップを取得すること。
データベースがオープンしていることから**オープンバックアップ、オンラインバックアップ**とも呼ばれます。
データベースの一部をバックアップすることから、**部分バックアップとも呼ばれます。

■ARCHIVELOGモードとNOARCHIVELOGモード時のバックアップモードの違い

●ARCHIVELOGモード時
　一貫性バックアップだけでなく、アーカイブREDOログファイルを使用したリカバリができるため「非一貫性バックアップ」を取得することも可能です。

●NOARCHIVELOGモード時
　アーカイブREDOログファイルがないため、リカバリはできません。**バックアップでは一貫性バックアップが必要になります。**

___
####バックアップタイプ
　RMANでは「バックアップセット」と「イメージコピー」という②出井のバックアップが取得できます。

■バックアップセット
　バックアップセットは、1つのバックアップファイルの中に複数のバックアップ対象のファイルを含めたものです。
バックアップファイル内では、<FONT COLOR=red>空のブロックは格納されない</FONT>ようにしているため、バックアップ対象ファイルよりも**バックアップファイルのサイズが小さくなる**のが特徴です。
また、変更されたブロックだけをバックアップする**増分バックアップも可能**です。ただし、リストアするときは、バックアップファイルからの抽出作業が必要です。
・1つのバックアップセットには同じタイプのファイルが含まれます。
・バックアップセットを**複数のバックアップファイル**に分割することもできます。

■イメージコピー
　イメージコピーは、データファイル、アーカイブREDOログファイル、制御ファイルのそれぞれをコピーして作成したものです。
**バックアップファイルとバックアップ対象ファイルは、完全に一致したファイル**になるため、<FONT COLOR=red>リストアすればすぐ使用可能になります。</FONT>
なお、イメージコピーはテープ装置へのバックアップはできません。


【理解】
　バックアップファイルサイズを考えた場合はバックアップセットを採用し、リストア時の操作を簡単にするためにはイメージコピーを採用しよう。

___

■全体バックアップと増分バックアップ
　
●全体バックアップ
　バックアップ対象のファイルの内容をすべてバックアップする。

●増分バックアップ
　**ベースとなるバックアップ（レベル0）と前回からの差分（レベル1）**を取得する。
ブロックチェンジトラッキング機能により、バックアップにかかる時間を短くすることが出来る。
構文：`ALTER DATAVASE {ENABLE | DISABLE} BLOCK CHANGE TRACKING [USING FILE 'ファイルパス'];`
ENABLE：有効化
DISABLE：無効化
USING FILE：ブロックチェンジトラッキングファイルを指定する。OMFが有効化されている時は不要。
OMFが有効化されている場合はDB_CREATE_FILE_DEST初期化パラメータで指定したディレクトリに作成される。

■ブロックチェンジトラッキング
　ブロックチェンジトラッキングは、**レベル1増分バックアップ時に変更されたブロックのみ読み込む**ことで増分バックアップ時間を短縮する機能です。
バックアップセットの作成時に自動で使用されます。
イメージコピーには使用できません。

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
####バックアップの管理
■バックアップスケジュール設定
　バックアップは定期的に実行するものです。そのためEMCCを使用してスケジュール化することができます。

【重要】
　●NOARCHIVELOGモードではオフラインバックアップが必要
　●Enterprise Managerから行われるバックアップは、RMANスクリプトを構成してくれる
　●バックアップのスケジュール時に、バックアップ設定の構成を編集することも可能
　●バックアップのスケジュール時にRMANスクリプトを編集することも可能
___

■高速リカバリ領域の管理
　RMANのバックアップは、デフォルトでは高速リカバリ領域を次の目的で使用する。
　
　　●アーカイブREDOログファイルの保存
　　●バックアップファイルの保存
　　●フラッシュバックログの保存

【重要】
高速リカバリ領域の初期化パラメータ
`DB_RECOVERY_FILE_DEST`：高速リカバリ領域の場所を指定
`DB_RECOVERY_FILE_DEST_SIZE`：高速リカバリ領域の最大サイズを指定

高速リカバリ領域のすべてのファイルは**Oracle Database**によって管理され、関連するファイル名はOMF形式で管理されます

___

■制御ファイルのトレースへのバックアップ
　制御ファイルは、RMANを使用してバックアップしたときは現在使用されている制御ファイルをそのままバックアップしていますが、障害対策としては制御ファイルの再作成スクリプトを用意しておくことも重要です
構文：`ALTER DATABASE BACKUP CONTROLFILE TO TRACE；`

このコマンドの結果は、<FONT COLOR=red>DIAGNOSTIC_DEST初期化パラメータで指定したディレクトリ</FONT>にテキストファイル（SQL)として格納されます
・制御ファイルを再作成するスクリプトが作成されます
・ユーザートレースファイルとして作成されます

___

■推奨バックアップ
　EMCCを使用して、過去24時間以内の任意の時点へリカバリできるOracle推奨のバックアップ計画を設定できます。
この推奨バックアップは、**増分バックアップとイメージコピー**に対して増分適用の機能を使用し、アーカイブREDOログファイルを使用するよりも高速にリカバリできます。
　推奨バックアップ計画では最初にデータベースのイメージコピーを作成し、以降は増分バックアップと増分更新バックアップを一緒に行います。増分更新バックアップは、増分バックアップを取る直前に、前回の増分バックアップをイメージコピーにロールフォワードし適用するというものです。

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
###RMANコマンドを使用したバックアップ
●`CONFIGURE CONTROLFILE AUTOBACKUP ON`
 　制御ファイルとSPFILEの自動バックアップを有効にする

●`CONFIGURE DEFAULT DEVICE TYPE TO sbt`
　　自動チャネルのデフォルトのデバイスタイプをsbtにする

●`CONFIGURE DEVICE TYPE DISK BACKUP TO COPY`
　　ディスクバックアップのバックアップタイプのデフォルトをイメージコピーにする

`BACKUP DATABASE PLUS ARCHIVELOG`
　　すべてのデータファイル、制御ファイル、SPFILE、アーカイブログファイルをバックアップします

`BACKUP DATABASE PLUS ARCHIVELOG DELETE INPUT`
　　バックアップ完了後、アーカイブログファイルは削除されます

`BACKUP COPY OF DATABASE`
　　取得済みのイメージコピーのバックアップを作成します

`BACKUP INCREMENTAL LEVEL 1 CUMULATIVE DATABASE`
　　データベースのレベル1の累積増分バックアップを実行します

【重要】
RMANでバックアップできるもの、できないもの
■できるもの
　　●データファイル
　　●制御ファイル
　　●SPFILE
　　●アーカイブREDOログファイル
　　●RMANバックアップ

■できないもの
　　●ネットワーク構成ファイル
　　●パスワードファイル
　　●ブロックチェンジトラッキングファイル
　　●Oracleホームディレクトリの内容

出題例1：`BACKUP DATABASE PLUS ARCHIVELOG`　このコマンドを実行した場合の処理の流れ
→ログスイッチを実行後、存在するアーカイブログをバックアップする
→全データファイルのバックアップ
→制御ファイルとSPFILEのバックアップ
→ログスイッチを実行後、バックアップ実行中のREDOログを含むアーカイブログファイルをバックアップ

【理解】バックアップされるファイルを覚えよう
現在までのアーカイブログファイル、全データファイル、制御ファイル、SPFILE、バックアップ実行中のREDOログを含むアーカイブログファイル

出題例2：現在のRMANの永続構成はすべでデフォルトの状態です。次のコマンドに関する説明として正しいものを選択しなさい
`RMAN > BACKUP INCREMENTAL LEVEL 1 CUMULATIVE DATABASE;`
→前回のレベル0からの変更ブロックがバックアップされる。
→制御ファイルとSPFILEも同時にバックアップされるが完全バックアップとして取得される。
【理解】CUMULATIVE句を指定すると累積増分バックアップとなり、前回のレベル0からの変更ブロックが対象になりますが、デフォルトではブロックチェンジトラッキング機能が有効化されていないため、変更追跡は無効です。
「変更ブロックのみデータファイルより読み込まれる」といった選択肢をまどわされないように注意。