オフライン・バックアップを利用したデータベース丸ごとコピーは、以下の手順で行います。
1.ソースデータベースの停止
コピーするデータベース・ファイルを確定させる(オフライン・バックアップを取得できる状態にする)ためにソース・データベースを停止します。2.Oracleデータベース構成ファイルのコピー
ソース・データベース上のOracleデータベース構成ファイルを、ネットワークあるいはテープなどのバックアップ・メディアを介して、ターゲット・データベース上の同一ディレクトリにコピーします。コピー対象となるOracleデータベース構成ファイルは以下のとおり。
- サーバー・パラメータ・ファイル ※SPFILEで起動するインスタンスの場合
- 初期化パラメータ・ファイル ※PFILEで起動するインスタンスの場合
- パスワード・ファイル
- 制御ファイル
- データ・ファイル
- REDOログファイル
- トレース・ファイル・ディレクトリ ※ファイルのコピーは不要
- アーカイブ・ディレクトリ ※アーカイブ・ログ・モードで運用しているデータベースの場合ファイルのコピーは不要。
C: \oracle \admin \ORCL \bdump \cdump \udump \ora92 \database spfileORCL.ora PWDORCL.ora \oradata \ORCL controll~.ctl ~.dbf redo~.log \archive
3.ターゲット・データベースのOracleインスタンス(サービス)の作成
ターゲット・データベース上でコピーしたデータベースを起動するために、コマンド・プロンプトから以下のコマンドを実行し、Oracleインスタンス(サービス)を作成します。ORADIM -NEW -SID { SID } -STARTMODE AUTO -NEW : Oracleインスタンスの新規作成 -SID : 作成するOracleインスタンスのSID -STARTMODE : OS起動時のOracleインスタンス(サービス)の自動起動設定
SIDが"ORCL"の場合、以下のようなコマンドとなります。
ORADIM -NEW -SID ORCL -STARTMODE AUTO
既に作成されているOracleインスタンス(サービス)を同一名称で再作成したい場合は、上記のコマンドを実行する前に以下のコマンドを実行して既存のOracleインスタンス(サービス)を削除します。
ORADIM -DELETE -SID { SID }
4.リスナーの構成
Oracle Net Managerを利用して、リスナーにデータベース・サービスを追加します。
※listener.oraの構成を理解しているのであれば、listener.oraを直接編集してもOKです。
5.Oracle Netサービスの構成
Oracle Net Managerを利用して、Oracle Netサービスを追加します。※tnsnames.oraの構成を理解しているのであれば、tnsnames.oraを直接編集してもOKです。
6.ターゲット・データベースへの接続の確認
3.で作成されたOracleインスタンス(サービス)を再起動し、sqlplus、Oracle Enterprise Managerなどを使用してターゲット・データベースに接続できることを確認します。※接続できない場合は、アラートログファイルやリスナー、Oracle Netの設定などを確認します。
7.ターゲット・データベースの初期化パラメータの調整
6.でデータベースのコピーは完了なのですが、メモリーの構成などの微調整が必要な場合は、以下の手順で行います。Oracle Enterprise Managerでターゲット・データベースにsysユーザー(SYSDBA権限)で接続し、[インスタンス]-[構成]-[メモリー]の画面でOracleインスタンスのメモリー構成を確認し、ターゲット・データベースの物理メモリー構成や他のアプリケーションとのメモリーの配分を考慮して、以下のメモリー割り当てを調整し、Oracleインスタンスを再起動します。
- 共有プール
- バッファ・キャッシュ
- ラージ・プール
- Javaプール
- SGA最大サイズ
- 集計PGAターゲット
補足.
同じソース・データベース、ターゲット・データベース間で繰り返しデータベースのコピーを行う場合、2回目以降は制御ファイル、データファイル、REDOログファイルのみをコピーするだけでOKです。【関連エントリ】
[Oracle] データベースのコピー方法(オフライン・バックアップを利用する方法<その1>) 2004/09/09
[Oracle] データベースのコピー方法(オフライン・バックアップを利用する方法<その2>) 2004/09/10