1 Zero Downtime Migrationの概要

Zero Downtime Migrationの仕組みと、その要件およびサポートされている構成について説明します。

Zero Downtime Migrationについて

Zero Downtime Migrationを使用すると、データベースをOracle Cloudデータベース・サービスに短時間で簡単に移行できます。

Zero Downtime Migrationにより、オンプレミスやOracle Cloud Infrastructure Classicから、またOracle Cloud Infrastructureリージョン間でさえもOracleデータベースを移行できます。データベースは、Oracle Active Data GuardやOracle Recovery Manager (RMAN)などのテクノロジを利用して、停止時間をほとんど発生させずにOracle Cloud Infrastructure、Exadata Cloud at CustomerおよびExadata Cloud Serviceに移行できます。

Zero Downtime Migrationには、堅牢かつ柔軟で再開可能な移行プロセスが用意されており、これはロールバックも容易です。個々のデータベースのデータベース移行を実行および管理したり、フリート・レベルでデータベース移行を実行できます。Zero Downtime MigrationはOracle Maximum Availability Architecture (MAA)に準拠し、Oracle Database 11gリリース2 (11.2.0.4)以降のデータベース・リリースがサポートされます。

Zero Downtime Migrationソフトウェアは、プロビジョニングするホストにインストールして実行するコマンドライン・インタフェースを備えたサービスです。Zero Downtime Migrationソフトウェアがインストールされるサーバーは、Zero Downtime Migrationサービス・ホストと呼ばれます。Zero Downtime Migrationサービス・ホストから1つ以上のデータベース移行ジョブを実行できます。

Zero Downtime Migrationでは、オンラインとオフライン(バックアップおよびリカバリ)の両方の移行がサポートされています。

オンライン移行

オンライン移行方法を使用すると、Zero Downtime Migrationでは次のタスクが実行されます。

  • Oracle Cloud Infrastructure Object Storage、Zero Data Loss Recovery ApplianceまたはNFSにソース・データベースをバックアップする
  • Data Guard構成、Oracle Data Guard最大パフォーマンス保護モードおよび非同期(ASYNC) REDO転送モードを使用して、バックアップからターゲット環境にスタンバイ・データベースを作成する
  • ソース・データベースとターゲット・データベースを同期させる
  • プライマリ・データベースとしてターゲット・データベースに切り替える(最小限の停止時間あり)

スイッチオーバー時には、Oracle Cloud Infrastructure、Exadata Cloud at CustomerまたはExadata Cloud Serviceで実行されているターゲット・データベースがプライマリ・データベースになり、ソース・データベースがスタンバイになります。

スイッチオーバー後に新しいプライマリと新しいスタンバイの間にSQL*Net接続がある場合、構成では、新しいプライマリからソース・データベース上の新しいスタンバイへのデータの同期(REDOの送信)が継続されます。この構成により、元のソース・データベースに戻す必要がある場合に、最小限の停止時間でスイッチオーバーを実行できるようになります。

ただし、スイッチオーバー後に新しいプライマリと新しいスタンバイの間にSQL*Net接続がない場合、新しいプライマリからソース・データベース上の新しいスタンバイへのデータの同期(REDOの送信)は行われません。この構成では、元のソース・データベースに戻すことはできません。

透過的データ暗号化(TDE)は、Oracle CloudのOracleデータベースではデフォルトで有効になっています。Zero Downtime Migrationでは、TDEがソースOracleデータベースで有効になっていない場合でも、ターゲット・データベースの暗号化が処理されます。ただし、移行のスイッチオーバー・フェーズが発生すると、Oracle Cloud内の新しいプライマリ・データベースが新しいスタンバイ・データベース(ソース)に送信するREDOログは暗号化されます。したがって、ソース・データベースを再度プライマリにし、Oracle Cloud内のデータベースをスタンバイにして再度切り替えてロールをスワップすることにした場合、ソース・データベースでは、TDEがソース・データベースで有効になっていないかぎり、REDOログによって適用された新しく暗号化された変更済のブロックを読み取ることができません。

移行後の問題を回避するために推奨されるベスト・プラクティスは、Zero Downtime Migrationで移行プロセスのスイッチオーバー・フェーズが実行される前に、ターゲット・データベースでテストおよび検証を実行することです。Zero Downtime Migration以外に、スナップショット・スタンバイ・データベースをテストするためのオプションがあります。テストおよび検証が完了し、スイッチオーバーを続行する準備ができたら、スナップショット・スタンバイ・データベースを削除し、Zero Downtime Migrationにスイッチオーバーを実行するように指示して移行プロセスを終了できます。

オフライン移行

オブライン移行方法を使用すると、Zero Downtime Migrationでは、ソース・データベースをOracle Cloud Infrastructure Object Storageにバックアップし、そのObject StorageバックアップからOracle Cloud Infrastructure、Exadata Cloud at CustomerまたはExadata Cloud Serviceに新しいデータベースをインスタンス化します。Oracle Database Standard Editionの移行に使用できる唯一の方法は、オフライン移行方法です。

オフライン移行方法は、データベースのクローニングと似ています。ターゲット・データベースにはソースとの関係がないため、データ同期またはフォールバック機能はありません。ソース・データベース・サーバーとターゲット・データベース・サーバーの間にSQL*Net接続は必要ありません。

Zero Downtime Migrationの機能

Zero Downtime Migrationサービスには多くの利点があり、カスタマイズ性に優れています。

  • 監査機能 - 移行ジョブで実行されたアクションを含め、すべてのカスタム・ユーザー・アクションが監査されます。
  • ワークフローのカスタマイズ - ワークフロー・アクション(フェーズ別にマーク)は、ユーザー・アクション前プラグインおよびユーザー・アクション後プラグインでカスタマイズできます。
  • ジョブ・サブシステム - フリート・スケールでデータベース移行を実行および管理できます。
  • ジョブ・スケジューラ - 将来のある時点で実行されるように移行ジョブをスケジュールできます。
  • 一時停止および再開機能 - 必要に応じて、移行ジョブを一時停止して再開できます。これは、メンテナンス・ウィンドウに準拠する際などに便利です。
  • ジョブの終了 - 実行中の移行ジョブの完了を待たずに、ジョブを終了できます。
  • ジョブの再実行機能 - 移行ジョブを障害発生時点から再実行(再開)できます。
  • ジョブの事前チェック - 移行タスクの事前チェックを実行して、データベース移行中のエラーを防止することができます。
  • コンプライアンス - Zero Downtime MigrationはOracle Maximum Availability Architectureのベスト・プラクティスに準拠し、Oracle Database 11gリリース2 (11.2.0.4.0)以降がサポートされます。

サポートされている移行パス

Zero Downtime Migrationでは、Oracle Cloud Infrastructure、Exadata Cloud ServiceおよびExadata Cloud at Customerへの様々な移行パスがサポートされています。

サポートされている移行経路は次のとおりです。

  • オンプレミス・データベースからOracle Cloud Infrastructure

    Zero Downtime Migrationを使用して、Oracleオンプレミス・データベースをOracle Cloud Infrastructure (仮想マシンまたはベア・メタル)に移行できます。

    Zero Downtime Migrationでは、オンプレミス・データベースをOracle Cloud Infrastructureに移行するために、Oracle Cloud Infrastructure Object Storageサービスを中間バックアップ媒体として使用する必要があります。

  • オンプレミス・データベースからOracle Exadata Cloud at Customer

    Zero Downtime Migrationを使用して、オンプレミス・データベースをOracle Exadata Cloud at Customer環境に移行できます。

    Zero Downtime Migrationでは、オンプレミス・データベースをOracle Exadata Cloud at Customer環境に移行するために、Object Storage Service (OSS)、Zero Data Loss Recovery Appliance (ZDLRA)またはネットワーク・ファイル・システム(NFS)を中間バックアップ媒体として使用する必要があります。

  • Oracle Cloud Infrastructure ClassicデータベースからOracle Cloud Infrastructure

    Zero Downtime Migrationを使用して、Oracle Cloud Infrastructure ClassicのデータベースをOracle Cloud Infrastructure (仮想マシンまたはベア・メタル)に移行できます。

    Zero Downtime Migrationでは、Oracle Cloud Infrastructure ClassicのデータベースをOracle Cloud Infrastructureに移行するために、Oracle Cloud Infrastructure Object Storageサービスを中間バックアップ媒体として使用する必要があります。

  • オンプレミス・データベースからExadata Cloud Service

    Zero Downtime Migrationを使用して、Oracleオンプレミス・データベースをExadata Cloud Serviceに移行できます。

    Zero Downtime Migrationでは、オンプレミス・データベースをOracle Cloud Infrastructureに移行するために、Oracle Cloud Infrastructure Object Storageサービスを中間バックアップ媒体として使用する必要があります。

  • Oracle Cloud Infrastructureデータベースから別のOracle Cloud Infrastructureリージョン

    Zero Downtime Migrationを使用して、Oracle Cloud Infrastructureリージョン間でデータベースを移行できます。たとえば、phoenixリージョンからfrankfurtまたはashburnリージョンにデータベースを移行できます。

    Zero Downtime Migrationでは、Oracle Cloudリージョン間でデータベースを移行するために、Oracle Cloud Infrastructure Object Storageサービスを中間バックアップ媒体として使用する必要があります。

サポートされているバックアップ・メディア

Zero Downtime Migrationプロセスの一環として、ソース・データベースのバックアップを作成し、ターゲット・データベースにリストアします。Zero Downtime Migrationでは、ターゲット環境に応じて、Oracle Cloud Infrastructure Object Storage、Zero Data Loss Recovery ApplianceまたはNFSストレージ・バックアップ・メディアがサポートされています。

  • Object Storageサービス(OSS)
  • Zero Data Loss Recovery Appliance (ZDLRA)
  • 外部のバックアップの場所(NFS)

Oracle Cloud Infrastructure Object Storage

Object Storageは、データベースをOracle Cloud Infrastructure、Exadata Cloud ServiceまたはExadata Cloud at Customerに移行する際のバックアップ・メディアとしてサポートされています。

データベースをObject Storageにバックアップすると、Zero Downtime Migrationサービスによってソース・データベースのバックアップが開始されターゲット環境にリストアされるため、Object Storageにはソース環境とターゲット環境の両方からアクセスできる必要があります。

Zero Downtime Migrationサービス・ホストではソースおよびターゲットのデータベース・サーバーへのSSH接続を使用して、Object Storageに対するバックアップおよびリストアに必要なバックアップ・モジュール・ソフトウェアをインストールして構成します。ソース・データベースからObject Storageへのバックアップは、RMANチャネルを介して行われます。

Zero Data Loss Recovery Appliance

Zero Data Loss Recovery Applianceは、データベースをExadata Cloud at Customerターゲットに移行する際のバックアップ・メディアとしてサポートされています。

Zero Data Loss Recovery Applianceをバックアップ媒体として選択した場合、Zero Downtime Migrationではワークフローの一環としてZero Data Loss Recovery Applianceへのバックアップを開始しないため、Zero Data Loss Recovery Applianceにソース・データベースの有効なバックアップがあることを確認する必要があります。

また、Zero Data Loss Recovery Applianceへのバックアップを開始する前に、データベースのすべてのインスタンスが稼働していることを確認する必要があります。インスタンスの停止時にバックアップが開始されると、データベースの複製操作が失敗する場合があります。

Zero Downtime Migrationサービスでは、Zero Data Loss Recovery Applianceのバックアップにアクセスし、Exadata Cloud at Customerにリストアします。Zero Data Loss Recovery Applianceのアクセス資格証明およびウォレットの場所は必須の入力パラメータであるため、Zero Downtime Migrationでは、ターゲット・データベースでのZero Data Loss Recovery Applianceウォレットの設定を処理できます。

ソースとターゲットのデータベース・サーバー間でのREDOストリームの転送はいずれの方向にも、SQL*Netリンクを介して行われます。

バックアップの作成の詳細は、Zero Data Loss Recovery Applianceのドキュメントを参照してください。

ネットワーク・ファイル・システム(NFS)

NFSは、データベースをExadata Cloud at Customerターゲットに移行する際のバックアップ・メディアとしてサポートされています。

データベースをNFSマウントにバックアップする場合、Zero Downtime Migrationサービスによってソース・データベースのバックアップが開始され、Exadata Cloud at Customerターゲット環境にリストアされます。NFSには、ソース環境とターゲット環境の両方からアクセスできる必要があります。

サポートされている構成

このリリースのZero Downtime Migrationでサポートされている構成とデプロイメントについて学習します。

Zero Downtime Migrationでは現在、次のトピックで説明するプラットフォーム、データベース・アーキテクチャおよびデータベース・バージョンがサポートされています。

サポートされているプラットフォーム

Zero Downtime Migrationでは、サービス・ホストと移行のソースおよびターゲット・データベース・サーバーで次のプラットフォームがサポートされます。

Zero Downtime Migrationサービス・ホスト - サポートされているプラットフォーム

Zero Downtime Migrationサービス・ホストは、Oracle Linux 7 (Linux-x86-64)以降のリリースで構成できます。

Zero Downtime Migrationサービスは、オンプレミスのスタンドアロン・サーバーまたはOracle CloudのスタンドアロンLinuxサーバー(コンピュート・インスタンス)にデプロイできます。Oracle Linuxは、Zero Downtime Migrationサービス・ホストでサポートされているプラットフォームです。

Zero Downtime Migrationサービス・ホストは、他の目的で他のアプリケーションと共有できます。ただし、Oracle Grid InfrastructureインスタンスをZero Downtime Migrationサービス・ホストで稼働させないでください。

ソースおよびターゲット・データベース・サーバー - サポートされているプラットフォーム

Linux-x86-64は、移行のソースおよびターゲット・データベース・サーバーでサポートされているプラットフォームです。

移行でサポートされているデータベース・バージョン

Zero Downtime Migrationでは、Oracle Cloud Infrastructure、Exadata Cloud at CustomerおよびExadata Cloud Serviceで使用可能なOracle Databaseのほとんどのバージョンがサポートされています。

次のOracle Databaseバージョンは、Zero Downtime Migrationを使用して移行できます。

  • Oracle Database 11 gリリース2 (11.2.0.4)
  • Oracle Database 12cリリース1 (12.1.0.2)
  • Oracle Database 12cリリース2 (12.2.0.1)
  • Oracle Database 18リリース3 (18.3)
  • Oracle Database 19c
  • すべての後続のOracle Databaseリリース

ノート:

Zero Downtime MigrationではOracle Data Guardを利用するため、ソースとターゲットの両方では同じオペレーティング・システムおよびデータベース・バージョンが必要です。ただし、Standard EditionデータベースではZero Downtime Migrationを使用できますが、バックアップおよびリストア手法に基づいたオフライン移行方法を使用する必要があり、Data Guardを利用しません。

Zero Downtime Migrationでは、クロス・エディションの移行はサポートされていません。Zero Downtime Migrationは、Enterprise EditionのデータベースからStandard Editionのデータベースへの移行には使用できません。その逆も同様です。

移行でサポートされているデータベース・アーキテクチャ

Zero Downtime Migrationでは、次のデータベース・アーキテクチャの実装がサポートされています。

  • Oracle Databaseシングルインスタンス: シングルインスタンスまたはOracle RACデータベース・ターゲットに移行できます。
  • Oracle RAC One Node: Oracle RACデータベース・ターゲットに移行できます。
  • Oracle RAC: Oracle RACデータベース・ターゲットに移行できます。

ノート:

Zero Downtime Migrationでは、非CDBの"従来の"データベースからマルチテナント・アーキテクチャのCDBへの移行はサポートされていません。

Zero Downtime Migrationのセキュリティ・プロビジョニング

Zero Downtime Migrationのファイルおよびディレクトリの権限と所有権と、セキュリティ機能の構成の処理はOracle Databaseのものと同等です。

Zero Downtime Migrationでは、ZDM_HOMEという名前の場所にインストールされます。これは、Oracle DatabaseのOracleホーム・ディレクトリORACLE_HOMEと同様に構造化されています。ZDM_HOME内のファイルおよびディレクトリの権限と所有権は、データベースORACLE_HOMEと同じ規則に従います。

また、Zero Downtime Migrationでは、Zero Downtime Migrationの構成ファイル、ログおよびその他のアーティファクトを格納するための、ZDM_BASEという名前のベース・ディレクトリ構造も作成されます。これは、Oracleホームに関連付けられている、Oracleベース・ディレクトリORACLE_BASEと似ています。ZDM_BASEのディレクトリおよびファイルの構造、所有者、権限は、ORACLE_BASEのものと似ています。

Zero Downtime Migrationの構成はすぐに使用できてセキュアであるように設計されているため、Zero Downtime Migrationの構成のセキュリティを確保するために、追加ステップを実行する必要はありません。

Zero Downtime Migrationは、ローカル・ホストからのJMX接続のみを受け入れ、HTTP接続用のループバック・アドレスでリスニングするように構成されます。Zero Downtime Migrationの操作は、製品をインストールしたオペレーティング・システム・ユーザーのみが実行できます。

Zero Downtime Migrationサービス・ホストからソース・データベース・サーバーおよびターゲット・データベース・サーバーへのSSH接続が必要です。移行ジョブの入力としてSSH鍵ファイルの場所を指定する必要があり、移行ジョブの間、このファイルが存在することが想定されています。これらの鍵ファイルが配置されているディレクトリおよびファイルのセキュリティを管理する必要があります。

ポートが別のアプリケーションと競合している場合は、通信ポートを変更できます。これらのポートへのアクセスは、Zero Downtime Migrationホスト内からのみ構成されます。$ZDM_BASE/crsdata/<hostname>/rhp/conf/standalone_config.propertiesファイルのRMIおよびHTTPポート・プロパティを変更できます。

プロパティは次のとおりです。

  • RMIポート - oracle.jwc.rmi.port=8895
  • HTTPポート - oracle.jwc.http.port=8896

プロパティの変更後にZero Downtime Migrationサービスをバウンスします。

Zero Downtime Migrationの操作にパスワードが必要な場合、パスワード入力用のプロンプトが表示されます。パスワードは暗号化されてZero Downtime Migrationデータベースに格納されます。指定されたパスワードは、移行ジョブの間、変更されないと想定されています。

操作の観点から、Zero Downtime Migrationは、ソースおよびターゲットのデータベースの移行用の構成(Oracleウォレット、透過的データ暗号化など)を処理するために、Oracle Databaseセキュリティ・ガイドのガイドラインに従います。

Zero Downtime Migrationのデータベース・サーバーのアクセス

Zero Downtime Migrationサービス・ホストでは、データベースの移行中にソースおよびターゲットのデータベース・サーバーにアクセスする必要があります。

移行を実行するために、Zero Downtime Migrationサービス・ホストでは、ソース・データベース・サーバーのいずれかに対するrootユーザーまたはSSH鍵ベースのアクセス権と、ターゲット・データベース・サーバーのいずれかに対するSSH鍵ベースのアクセス権が必要です。Oracle RACデータベースを移行する場合は、Oracle RACノードのいずれかへのアクセス権を付与することが適切です。Zero Downtime Migrationサービス・ホストでは、移行に必要なソフトウェアをソースおよびターゲットのサーバーにコピーして、操作の最後にクリーン・アップします。

SSH接続を確立するにはSSH秘密鍵が必要です。この生成された鍵ではパスフレーズを使用しないでください。Oracle Cloud Serviceコンソールを使用して、新しいSSH鍵を作成して既存のデプロイメントに追加できます。

ターゲット・プレースホルダ・データベース環境

Zero Downtime Migrationでは、移行プロセスを開始する前にプレースホルダ・データベース・ターゲット環境を構成する必要があります。プレースホルダ・データベース・ターゲット環境の構成を完全に制御しているため、ニーズに応じてその設定および構成を行うことができます。

移行プロセス中、Zero Downtime Migrationサービス・ホストは、プレースホルダ・データベースを削除し、ソース・データベースと同じdb_nameを使用してターゲット環境にデータベースを再作成して、ソース・データベースをこのプレースホルダ・データベース・ターゲット環境にリストアします。

移行中、SGAパラメータを含め、ターゲット・データベースのデータベース・パラメータは保持され、移行されたデータベースはこの同じ構成で実行されます。

移行が完了すると、ターゲット・データベースはOracle Database Cloud Serviceコンソールを使用してアクセス可能になり、SRVCTLコマンドでデータベースを管理できます。データベース・パラメータに対する変更は、移行後に実行できます。

Zero Downtime Migrationの操作フェーズ

Zero Downtime Migrationサービスでは、操作フェーズの単位で移行プロセスを定義します。

Zero Downtime Migrationでは、ターゲット・プラットフォームやバックアップ媒体などの構成された入力パラメータに基づいて、定義された操作フェーズを使用して移行ワークフローを自動計算します。各操作フェーズでカスタム・プラグインを挿入すると、ワークフローをカスタマイズできます。Zero Downtime Migrationサービスを使用すると、選択した操作フェーズで移行ワークフローを一時停止および再開できます。

特定の操作について移行ワークフローに関連するフェーズをリストできます。ソース・データベース・サーバーで実行されるフェーズは接尾辞_SRC付きでリストされ、ターゲット・データベース・サーバーに関連付けられたフェーズは接尾辞_TGT付きでリストされます。