2 前提条件

Zero Downtime Migrationの要件を満たしています。

2.1 Zero Downtime Migrationサービスのホスト要件

要件 説明 コメント
Zero Downtime Migrationサービスのホスト

Zero Downtime Migrationソフトウェアは、100GBの空き記憶領域を備えたOracle Linux 7以降で実行しているLinuxホストが必要です。

Zero Downtime Migrationサービスのホストは、ルート・ユーザーまたはSSH鍵のいずれかを介してソースおよびターゲットのデータベース・サーバーに接続できる必要があります。

Zero Downtime Migrationサービスのホストからターゲット・データベース・サーバーへの接続を確立せずに、データベースの移行を実行することはできません。したがって、Zero Downtime Migrationサービスのホストからソースおよびターゲットのデータベース・サーバーへの接続の構成の要件を満たしていることを確認してください。

2.2 ソースおよびターゲットのデータベースの要件

要件 説明 コメント
サポートされているデータベースのリリース

Zero Downtime Migrationは、Oracle Database 11gリリース2 (11.2.0.4)以降をサポートします。

ソースおよびターゲットの両方のデータベース・リリース・バージョンが同じである必要があります。

ソース・データベースの前提条件
  1. ソース・データベースはアーカイブ・ログ・モードで稼働している必要があります。
  2. Oracle Database 12cリリース2以降では、ソース・データベースで透過的データ暗号化(TDE)が有効になっていない場合、移行を開始する前にTDEウォレットを構成する必要があります。WALLET_TYPEは、AUTOLOGIN (優先)またはPASSWORDベースのいずれかです。
  3. ウォレットのSTATUSOPENであり、WALLET_TYPEAUTOLOGIN (AUTOLOGINウォレット・タイプの場合)またはWALLET_TYPEPASSWORD (PASSWORDベースのウォレット・タイプの場合)であることを確認します。マルチテナント・データーベースの場合は、すべてのPDBおよびCDBでウォレットがオープンされており、マスター鍵がすべてのPDBおよびCDBに設定されていることを確認します。

    SQL> SELECT * FROM v$encryption_wallet;

  4. ソースがOracle RACデータベースで、SNAPSHOT CONTROLFILEが共有の場所にない場合、Oracle Object Storeへのバックアップ中にORA-00245エラーが発生しないように、すべてのOracle RACノード上にある共有の場所を指すようSNAPSHOT CONTROLFILEを構成します。
  5. ソースおよびターゲットのデータベース・サーバー・ノードのポート22で、Zero Downtime Migrationサービス・ホストからの着信接続が許可されることを確認します。
  6. ソース・データベース・サーバーのSCANリスナー・ポート(1521など)でターゲット・データベース・サーバーからの着信接続要求が許可されることと、その逆も同様であることを確認します。

    ファイアウォールでSCANリスナー・ポートを使用する着信リモート接続がブロックされる場合は、代替SQL接続を使用可能にする必要があります。

  7. 移行時、すべてのRMANスクリプト(cronジョブなど)を無効にして複数のRMANバックアップを回避します。
  • ソース・データベースがOracleリリース12.2以降の場合、TDEは有効になっていないため、Transparent Data Encryption Walletの設定を参照してTDEを有効にします。

  • ステップ4で、データベースがASMストレージにデプロイされている場合は、次のようにします。

    $ rman target / RMAN> CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA/snapcf_matrix.f';

    データベースがACFSファイル・システムにデプロイされている場合は、前述のコマンドに共有のACFSの場所を指定します。

ターゲット・データベースの前提条件
  1. データベース移行の開始前に、プレースホルダ・ターゲット・データベースを作成する必要があります。

    コンソールからデータベースを作成するために選択した形状が、ソース・データベースと将来のサイズ設定要件に対応できることを確認します。適切なガイドラインは、ソース・データベースと同程度または大きいサイズの形状を使用することです。

    ターゲット・データベースのdb_nameは、ソース・データベースのdb_nameと同じである必要があり、ターゲット・データベースのdb_unique_nameパラメータ値は、Oracle Data Guardでターゲットをソース・データベースとは異なるデータベースとして識別できるように一意である必要があります。

  2. SYSパスワードは、ソース・データベースのSYSパスワードと一致する必要があります。
  3. ターゲット・データベース・バージョンをソース・データベース・バージョンと同じにする必要があります。ターゲット・データベースのパッチ・レベルもソース・データベースと同じ(またはそれ以上)にする必要があります。
  4. 透過的データ暗号化(TDE)が有効になっており、ウォレットのSTATUSOPENであり、WALLET_TYPEAUTOLOGIN (AUTOLOGINウォレット・タイプの場合)またはWALLET_TYPEPASSWORD (PASSWORDベースのウォレット・タイプの場合)であることを確認します。

    SQL> SELECT * FROM v$encryption_wallet;

  5. ターゲットがOracle RACデータベースの場合は、OracleユーザーのOracle RACサーバー間にパスフレーズなしのSSH接続を設定する必要があります。
  6. ターゲット・データベースのディスク・グループ(ASMディスク・グループまたはACFSファイル・システム)のサイズおよび使用率をチェックし、十分な記憶域がターゲット・データベース・サーバーでプロビジョニングされ、使用可能であることを確認します。
  7. ソース・データベースのバックアップを収容するのに十分な記憶域がオブジェクト・ストアでプロビジョニングされ、使用可能であることを確認します。
  8. ターゲット・サーバーのポート22および1521が開いていて、ファイアウォールでブロックされていないことを確認します。
  • プレースホルダ・ターゲット・データベースは移行時に上書きされますが、全体の構成は維持されます。
  • ターゲット・データベース環境がソース・データベースよりも高いパッチ・レベルである場合(ソース・データベースがOct 2018 PSU/BPであり、ターゲット・データベースがJan 2019 PSU/BPである場合など)は、データベースの移行後にdatapatchを実行する必要があります。
  • 自動バックアップを有効にせずに、コンソールからターゲット・データベースをプロビジョニングします。つまり、「Configure database backups」セクションで、「Enable automatic backups」オプションを選択しないでください。

2.3 オブジェクト・ストレージの要件

要件 説明 コメント
オブジェクト・ストレージの要件 Oracle Cloudオブジェクト・ストレージへのアクセスと、データベース・バックアップを保持するバケットを作成する権限が必要です。移行ジョブの発行時に、オブジェクト・ストアのSwiftトークン・パスワードを指定する必要があります。

ソース・データベースのバックアップを収容するのに十分な記憶域がオブジェクト・ストアでプロビジョニングされ、使用可能であることを確認します。

2.4 ソースおよびターゲットのデータベース・サーバーの間のSQL*Net接続

要件 説明 コメント
ソースおよびターゲットのデータベース・サーバーの間のSQL*Net接続

Oracle Data Guardの設定と同期については、SQL*Net (DBポート、スキャン・ポート)をソース(オンプレミス・データベースまたはOracle Cloud Infrastructure Classicインスタンス)とターゲットのOracle Cloud Infrastructureインスタンスの間で開きます。たとえば、1521はOracle Cloud Infrastructureターゲットのデータベース・ポートです。

なし

2.5 ポートの要件

イニシエータ ターゲット プロトコル ポート 用途 コメント

Zero Downtime Migrationサービスのホスト

ソースおよびターゲット

TCP

22

SSH

Zero Downtime Migrationの操作フェーズを実行する認証ベースの操作ソースおよびターゲットのノードでは、Zero Downtime Migrationサービス・ホストからの着信接続を受け入れる必要があります。

ソース

ターゲット

TCP

1521

SQL*Net

OracleクライアントのSQL*Netプロトコルを介したデータベースへの接続で、データベース問合せ、Data Guardの同期および構成を実行できるようにする必要があります。

注意: デフォルト以外のポート番号(ポート1521以外のもの)をローカル・リスナー・アドレスに使用している場合、デフォルト以外のポートで接続を許可する必要があります。

ターゲット

ソース

TCP

1521

SQL*Net

OracleのSQL*Netプロトコルを介したデータベースへのOracleクライアント接続を許可する必要があります。

スイッチオーバー後にオンプレミス・データベースがOracle Cloudの新しいプライマリと同期している必要がある場合に、REDOログの出荷を許可します。Oracle Cloudからオンプレミス・ホストに通信できない場合、この通信を回避するために、レスポンス・ファイルでSKIP_FALLBACKTRUEに設定します。

注意: デフォルト以外のポート番号(ポート1521以外のもの)をローカル・リスナー・アドレスに使用している場合、デフォルト以外のポートで接続を許可する必要があります。

ソース

Oracle Cloud Object Storeサービス

SSL

443

指定されたOracle Cloud Object Storeバケットに、ソース・データベースのバックアップを作成します。

選択したバックアップ方法にOracle Cloud Object Storeサービスがバックアップ媒体として含まれる場合、記載されたOracle Cloud Object Storeサービスが適合するポートにアクセスします。

ターゲット

Oracle Cloud Object Storeサービス

SSL

443

指定されたOracle Cloud Object Storeバケットからターゲットにソース・データベースのバックアップをリストアします。

選択したバックアップ方法にOracle Cloud Object Storeサービスがバックアップ媒体として含まれる場合、記載されたOracle Cloud Object Storeサービスが適合するポートにアクセスします。