View a markdown version of this page

フェーズ 3 — 転送フェーズ (ソースデータベースは読み取り専用) - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

フェーズ 3 — 転送フェーズ (ソースデータベースは読み取り専用)

このフェーズの間、ソースシステムは読み取り専用になります。宛先システム上のデータファイルは、最終的な増分バックアップを適用することにより、ソースシステムと整合性が保たれます。次に、ソースシステムからオブジェクトメタデータをエクスポートし、宛先システムにインポートします。

ステップ 1: ソースデータベースの表領域を読み取り専用にする

SYSDBA として、転送されるすべての表領域を READ ONLY ソースシステム上で作成します。

ダウンタイムを削減するために、次の 2 つの手順を同時に実行できます。

ステップ 2: 最終的な増分バックアップを作成する

ソースシステムで、転送する表領域の最終増分バックアップを作成します。

cd /u01/oracle/expimp/xtt<nn> export TMPDIR=/u01/oracle/expimp/out/out<nn> $ORACLE_HOME/perl/bin/perl xttdriver.pl --backup --debug 3

この手順は、「ORA-20001: TABLESPACE (S) は読み取り専用」というエラーを返します。エラーは想定されており、無視してかまいません。

ステップ 3: メタデータをエクスポートする

転送可能なテーブルスペースのメタデータをソースデータベースからエクスポートします。

これは、転送可能な表領域のメタデータをエクスポートするためのパラメータファイルの例です。

directory=dmpdir metrics=y dumpfile=xttsmeta%U.dmp filesize=1048576000 logfile=expxtts.log transport_tablespaces= APPS_TS_ARCHIVE, APPS_TS_INTERFACE, APPS_TS_MEDIA, APPS_TS_NOLOGGING, …. exclude=table_statistics,index_statistics

さらに、ソースシステムに多数のテーブルとインデックスがある場合、統計を除外することで、エクスポート中の時間を節約できます。転送可能な表領域をインポートした後、宛先システムに統計をインポートします。

expdp を実行する前に、ソースシステムに格納されているダンプファイルにデータベースディレクトリを作成します。

SQL> create directory dmpdir as <location>; expdp system/<system password> parfile=<parameter file>

次の2つのステップは、RMAN増分バックアップを使用したクロスプラットフォームの転送可能な表領域の最後のステップです。これらのステップは、順番に実行する必要があります。

ステップ 4: ファイルを転送し、最終的な増分バックアップを適用する

最終増分バックアップを転送し、ダンプファイルを宛先システムにエクスポートし、変換して最終増分バックアップを適用します。

Direct Connect を使用して、最終的な増分バックアップコピーと res.txt ファイルを宛先に転送します。VPN 接続を使用できますが、 を使用すると、十分な帯域幅があればダウンタイムが大幅に短縮 Direct Connect されます。

最終的な増分バックアップを復元するには、宛先システムで、次のコマンドを --restore オプションを使用して、表領域グループごとに実行します。

cd /u01/oracle/expimp/xtt<nn> export TMPDIR=/u01/oracle/expimp/out/out<nn> $ORACLE_HOME/perl/bin/perl xttdriver.pl --restore --debug 3

ステップ 5: オブジェクトメタデータをインポートする

Oracle Data Pump を使用して、オブジェクトのメタデータを宛先システムにインポートします。次のコマンドを実行して、宛先システムの transport_datafiles= パラメータのデータファイルのリストを取得します。

cd /u01/oracle/expimp/xtt<nn> export TMPDIR=/u01/oracle/expimp/out/out<nn> $ORACLE_HOME/perl/bin/perl xttdriver.pl -e

前のコマンドを実行するたびに、xttplugin.txt ファイルを取得し、ファイルには transport_datafiles= パラメータがあります。transport_datafiles= をすべての xttplugin.txt ファイルから一行でマージし、データファイルリストをインポートメタデータのパラメータファイルの transport_datafiles 引数に入れます。

次のコードスニペットは、宛先システムに転送可能な表領域をインポートするためのパラメータファイルを示しています。

directory=dmpdir metrics=y dumpfile=xttsmeta%U.dmp logfile=impxtts.log exclude=TYPE transport_datafiles= '+EBSDATA/APPS_TS_TX_DATA_2.dbf','+EBSDATA/APPS_TS_TX_DATA_11.dbf','+EBSDATA/APPS_TS_TX_DATA_22.dbf','+EBSDATA/APPS_TS_TX_DATA_183.dbf','+EBSDATA/APPS_TS_TX_DATA_204.dbf','+EBSDATA/APPS_TS_TX_DATA_219.dbf','+EBSDATA/APPS_TS_TX_DATA_227.dbf'…..

impdp を実行する前に、エクスポートダンプファイルの場所を指すデータベースディレクトリを作成します。

SQL> create directory dmpdir as <location>; impdp system/<system password> parfile=<parameter file>