web-dev-qa-db-ja.com

生データファイルを移動してOracleデータベースを移動する

大規模なOracleデータベース(約300 GB)があり、短時間でデータベースのコピーを新しい環境に移動する必要があります。 Oracleが管理するrawファイルをピックアップして新しいボックスに移動し、ダンプを実行してから別のインポートをバイパスする方法があるかどうか疑問に思っていましたか?

私は http://docs.Oracle.com/cd/B28359_01/server.111/b31107/asmcon.htm を見ていましたが、これが必要なものかどうかはわかりません。生データファイルはどこに保存されますか?

5
Adam

これは、OracleバージョンとOSバージョンの違いに大きく依存します。両方が同じバージョンであり、Oracleが同じマナーでパッチされている場合、答えは次の要因になります。

すべてのデータベース関連ファイルが同じ場所にある場合

...データベースをコールドクリーンシャットダウンする

...データファイル、一時ファイル、元に戻す、やり直しログ、制御ファイル、インスタンス関連ファイル(initINST.ora、spfileINST.ora、orapwINSTなど)を$ Oracle_HOME/dbsにコピーします。

...インスタンスをoratabファイルにセットアップします(または、Windowsの場合は、ORADIMを使用してインスタンス関連のWindowsサービスを作成します)

...通常どおり起動

ファイル構造は変更されますが、インスタンス名は変更されない場合

...データベースをコールドクリーンシャットダウンする

...データファイルをコピーし、元に戻し、やり直しログとインスタンス関連ファイル(initINST.ora、spfileINST.ora、orapwINSTなど)を$ Oracle_HOME/dbsに保存します。

...制御ファイルをコピーしない

...インスタンスをoratabファイルにセットアップします(または、Windowsの場合は、ORADIMを使用してインスタンス関連のWindowsサービスを作成します)

...起動番号

...「コントロールファイルの再利用〜noresetlogsの作成」コマンドを使用してコントロールファイルを再作成します。

... TEMPテーブルスペースに戻す

ファイル構造が変更され、かつインスタンス名も変更される場合

...データベースをコールドクリーンシャットダウンする

...データファイルをコピーし、元に戻し、やり直しログとインスタンス関連ファイル(initINST.ora、spfileINST.ora、orapwINSTなど)を$ Oracle_HOME/dbsに保存します。

...制御ファイル、一時ログまたはやり直しログをコピーしない

...インスタンスをoratabファイルにセットアップします(または、Windowsの場合は、ORADIMを使用してインスタンス関連のWindowsサービスを作成します)

...起動番号

...「create controlfile set〜resetlogs」コマンドを使用して制御ファイルを再作成します

... TEMPテーブルスペースに戻す

これは、典型的な古いスタイルのクローン技術です。通常、私はRMAN DUPLICATEのファンですが、これが1回限りのことであれば、おそらく心配する必要はありません。これが11gでない場合は、別のバックアップを取り、rmanで使用するために転送します。 11gの場合、インスタンスがネットワーク上で相互に到達できる限り、複製は「from active database」句を使用できます。

5
REW

1つのサーバーから別のサーバーへの(データベースのダウン中の)データファイルのコピーは、必要なものの一部ではありますが、すべてではありません。また、REDOログファイルも必要です。また、ターゲットシステムに新しい制御ファイルを作成する必要もあります。別のWindowsマシンに移行する場合は、他にもいくつかの問題があります。当然、同じパッチが適用されたターゲットマシンに同じバージョンのOracleをインストールする必要があります。

RMANとリカバリカタログを使用してデータベースのバックアップを作成する場合は、DUPLICATE TARGET DATABASEコマンドを使用するのが最も簡単です。

3
Adam Musch