migrate_db
コマンドに入力として渡されたXMLファイルまたはJSONファイルに定義されているソースと宛先のマッピングを使用して、データベースの統合を実行するためにデプロイメント・プロシージャを発行します。ファイルには、次のどの移行方法を使用するかも示されています。
- Data Guardのフィジカル・スタンバイ(最小停止時間)
- RMANクローン
- データ・ポンプ(完全またはスキーマ)のエクスポートおよびインポート(クロス・プラットフォーム)
- 完全トランスポータブル・エクスポートおよびインポート(最小停止時間、クロス・プラットフォーム)
- クロス・プラットフォーム増分バックアップ(最適化済、最小限の停止時間、クロスプラットフォーム)
ノート:
Oracleデータベース13.3.2.0.0以降でmigrate_db
を使用して移行を試行する前に、パッチ12.1.0.2.210119がデプロイされていることを確認してください。
書式
emcli migrate_db -file=<XML or JSON file path> [-exec_mode=<execution mode>] [-ignore_pre_req] [ ] indicates that the parameter is optional.
オプション
file
ソースと宛先のデータベース・マッピングを含むXMLファイルまたはJSONファイルの絶対パス。
exec_mode
移行方法が
ONLINE_DATAGUARD
の場合のみ、次のように使用します。FULL
: 停止時間のユーザー制御なしで、同じジョブですべての移行ステップを実行します。たとえば、データベース・スタンバイ、RACへの変換およびスタンバイ・スイッチオーバーのステップを同じジョブで実行します。PRE_DOWNTIME
: データベースを停止させる必要のないすべてのステップを実行します。たとえば、データベース・スタンバイおよびRACへの変換のステップを同じジョブで実行します。このモードを使用する場合、現在のジョブが正常に完了した後で、同じ入力ファイルと
exec_mode
オプションのDOWNTIME
を使用して移行ジョブを再度実行する必要があります。DOWNTIME
: 停止時間を必要とするすべてのステップを実行します。たとえば、ジョブでスイッチオーバー・ステップを実行します。このモードを使用する前提として、
PRE_DOWNTIME exec_mode
オプションを指定したジョブですべての停止時間前のステップが正常に実行されている必要があります。
exec_mode
を指定しない場合、デフォルトでFULL
になります。ignore_pre_req
XMLの前提条件検証をすべて無視します。
例
例1
次の例では、dgpredt-migrate.xml
ファイルに指定されたマッピングに基づいて、データベース移行を実行するプロシージャをデプロイします。ジョブでは、データベースの停止時間を必要としないすべてのステップが実行されるData Guard移行方法を使用します。
emcli migrate_db
-file="/home/migrations/dgpredt-migrate.xml"
-exec_mode="PRE_DOWNTIME"
例2
次の例では、dgdt-migrate.xml
ファイルに指定されたマッピングに基づいて、データベース移行を実行するプロシージャをデプロイします。ジョブでは、データベースの停止時間を必要とするすべてのステップが実行されるData Guard移行方法を使用します。また、XMLの前提条件検証は行われません。
emcli migrate_db
-file="/home/migrations/dgdt-migrate.xml"
-exec_mode="DOWNTIME"
-ignore_pre_req
例3
ノート:
複数のデータベースを同じターゲットCDBに移行するときには、PDBごとのXMLファイルで個別のstorageDirectory
を渡す必要があります。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<moveDB type="ONLINE_TTS">
<mapping>
<source>
<targetName>example.source.com</targetName>
<targetType>oracle_database</targetType>
<sysdbaCreds>MY_SYSDBA</sysdbaCreds>
<dbHostCreds>MY_HOST</dbHostCreds>
<preScript>/prescript.sql</preScript>
<workingDirectory>/duser/predb</workingDirectory>
<phase>prepare</phase>
<pdbName>ORCL18C_PDB1</pdbName>
<pdbAdminCreds>MY_PDB_CREDS</pdbAdminCreds>
</source>
<destination>
<targetName>example.destination.com</targetName>
<targetType>oracle_database</targetType>
<sysdbaCreds>MY_SYS</sysdbaCreds>
<dbHostCreds>MY_HOST</dbHostCreds>
<postScript>/postscript.sql</postScript>
<workingDirectory>/duser/postsql</workingDirectory>
<storageDirectory>+DATA</storageDirectory>
<storageType>ASM_STORAGE</storageType>
<asmCreds>MY_ASMCREDS</asmCreds>
</destination>
</mapping>
</moveDB>