もしもみなみんがDBをクラウドで動かしてみたら 連載Indexページ
※公開日: 2023/12/22 最終更新日: 2023/12/22
みなさん、こんにちは。しばらく連載をおやすみしておりましたが、少しずつ再開していけたらと思ってますので、またよろしくお願いいたします。
新しいプラットフォーム・インフラの採用、H/W EOL、アップグレードなどで、Oracle Databaseの移行方法について悩まれる方は多いかと思います。今回は、Oracle Databaseの移行方式の検討時に、OCI Base Database ServiceやExadata Database Serviceへ移行するケースを中心に検討の参考になる情報をご紹介していきます。(今後も随時情報を追加していく予定です)
目次
1. 移行方式
Oracle Databaseを移行する方法としては、Oracle Databaseの移行方式として馴染みのあるData Pumpのエクスポート・インポートにはじまり、RMANでバックアップを利用する方法、表領域単位のTransportable Tablespaces(TTS)、DB単位のFull Transportable export/import、PDB単位のクローンやUnplug/Plugなどもありますし、Data GuardやGoldenGateを利用して停止時間を短くする方式などもあります。さらには、Zero Downtime Migration(ZDM)やOCI Database Migration Service(DMS)といったクラウドへ簡単に移行できるようにしているツール/サービスも提供しています。これらはOracle DatabaseのOCIのサービスへの移行へも利用できますし、もちろんOnP間や別クラウド間、OCI内の移動やシェイプ変更時などにも利用可能です。
「沢山方法はあるのはわかったが、今回検討対象となる移行方式はどれだろう、、」と頭を抱えている方!移行方式を絞ってくれるサイト、Oracle Database Migration Methods Advisor を使ってみてください。

入力する項目として、移行元・先のDBバージョン、DBサイズ、エンディアン、CDBかどうか、移行モード(オンラインか)、移行タイプ(論理/物理)を選択すると、方式を絞って表示されます。Target Serviceという項目がありますが、必須項目は移行元DBバージョン(Source DB Version)と移行先DBバージョン(Target DB Version)のみなので、クラウドへの移行でなくてもご活用いただけます。
上記のツールである程度絞った上でさらに検討を進めるために、移行時に考慮すべき点をまとめていきます。
移行時に考慮すべき点としては、下記の点が挙げられます。
・ソフトウェア情報 : OSの種類・バージョン、データーベースのバージョン・エディション
・データベース情報: データベースのキャラクタ・セット、使用されるデータ型、インデックスを含むデータ・サイズ、マルチテナント・アーキテクチャかどうか
・ホスト・プラットフォームのエンディアン形式
・データ・ステージングのためのストレージ
・ネットワーク帯域幅
・許容されるシステム停止の長さ
OCIのPaaSマネージド・サービスであるBaseDBやExaDBに移行する場合、検討の考慮点としてよくあがるのが下記になります。
- アップグレード : BaseDBやExaDBで提供されている(選択可能)なバージョンを利用するため、移行時にLong Term Releaseのバージョンへアップグレードするケースが多い
- Oracle Databaseのサポートとパッチ提供期間 : Release Schedule of Current Database Releases (Doc ID 742060.1)
- ExaDB上のサポートされるバージョン: Exadata Cloud Service Software Versions (Doc ID 2333222.1)
- Non-CDBからCDBへ変更(マルチテナント・アーキテクチャ化) : BaseDBやExaDBは19c以降は、デフォルトCDBで作成される。なお、Oracle Database 20c以降は Non-CDB/非CDB構成は非サポート
- 暗号化の有効化 : PaaSサービスは、表領域暗号化がオン
いずれも対応可能な方式となると、Data Pump、TTS、FTEX、GoldenGate、ZDM、DMSが検討にあがってきます。それらを検討するにあたってのTipsや検証結果の情報を次の章でまとめます。
参考 : OCI ドキュメント : クラウドへのデータベースの移行
2. 各方式の詳細情報・検証結果
Oracle Databaseのクラウド移行の方法について、OCI ドキュメント : クラウドへのデータベースの移行 に各方式についてまとめられています。その中でも代表的な方式について、詳細なTipsや検証結果などの資料・動画をご紹介いたします。
Data Pumpを利用したデータベース移行
Oracle Database移行ツールの概要とTips
Zero Downtime Migration(ZDM)によるデータベース移行
ZDMは、ExaDB-DやExaDB-C@Cのマニュアルで推奨している移行方法になります。
Oracle Database移行ツールの概要とTips参考 : Oracle Zero Downtime Migration ドキュメント
OCI Database Migration Service によるデータベース移行
参考 : OCI ドキュメント Database Migration
Data Pump、Full Transportable Export/Import(FTEX)、ZDM、DMSの検証結果
Oracle Database Technology Night #69 Oracle Databaseクラウド移行ツールさわってみたGoldenGaateによるデータベース移行
GoldenGateでの移行の場合、OCIで提供されているOCI GoldenGateやマーケットプレイスでのGoldenGateイメージ、顧客管理で利用するOracle GoldenGateがあります。また、Zero Dowintime MigrationやOCI Database Migration Serviceでオンラインでの論理移行を選択すると、裏ではGoldenGateを利用して簡単に移行が行われます。
Oracle Database Technology Night #69 Oracle Databaseクラウド移行ツールさわってみた
OCI GoldenGateは、マネージド・サービスなので利用・管理が容易にはなります。どれを利用するか検討する際には、まずは今回の移行対象がOCIのサービスが利用可能なものかを確認をしてください。
参考 : GoldenGate ドキュメント
参考 : OCI ドキュメント OCI GoldenGate
クラウド移行でGoldenGateを活用する場合の構成事例とTips
3. 移行・アップグレード後の動作への影響の調査とテスト
移行するにあたり、Oracle Databaseのアップグレード(バージョンアップ)やインフラが変わるということでアプリへの影響を懸念して、非互換情報の調査やテストをされるケースも多いかと思います。
何が変わるのか: 仕様の変更点
データーベース・アップグレード・ガイド
各リリースごとのマニュアル「データーベース・アップグレード・ガイド」に、動作変更・非推奨・非サポートの機能がリスト化されているので、ご確認ください。より詳細な情報は、機能別マニュアルをご確認ください。
- Oracle Database データベース・アップグレード・ガイド 23c (23c、21c、19c, 18c, 12.2での仕様の変更に関する情報が、全て23cや19cのマニュアルで確認可能です)
Features and Licensing
機能の利用可否やライセンスに関して、Features and Licensingというサイトで簡単に調べることも可能です。各リリースごとの新機能、エディションやオプションごとの利用可能な機能など、今回の移行検討対象の環境に合わせて情報をまとめて表示可能です。
- リリースごとの機能利用可否をリスト

- エディションやオプションごとの機能利用可否をリスト

ORAdiff
さらに詳細な比較ができるサイトとして、ORAdiff というサイトがあります。
このサイトでは、バージョン・パッチレベル間での差異を簡単に調べることができます。たとえば、初期化パラメータ( _パラメーターまで!)、デフォルト・ユーザーやロール、Bug修正が含まれるかなど、様々な情報が確認可能です。これまでマニュアルの内容を突合して見比べたり、アップグレード後のバージョンの環境を構築した後にしか確認できなかった情報などが、環境がなくても簡単に確認できるのは嬉しいですね。

検索結果は、Actions > Downloadから結果のダウンロード(csv、html、excel、pdf等)もできます。
影響の確認 : テスト方法の検討
移行時に課題となるのが、アプリケーション・テストの負荷です。

Oracleでは、Real Application Testingという低作業コストでテストを実施可能な製品をご提供しています。こちらを利用することで、移行やアップグレードに伴うテストの工数削減・期間短縮が期待できます。

移行時だけではなく、クラウド移行後も定期的なパッチ適用・メンテナンス時に利用することで、必要なテストを簡単にルーティン化することが可能です。
RATユースケースOnPリプレイス時やクラウド移行時に、SQL Performance Analyzer(SPA)を利用したテスト実施した事例も下記にまとめてありますので、ぜひご参照ください。
RAT(SPA)活用パターン事例[セミナー資料/動画] オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説
4. クラウド移行について網羅的に学びたい方向け
Oracle Database開発部門のメンバーによる、アップグレード・移行・統合を網羅的にカバーしているベスト・プラクティス バーチャル・クラスルームの資料・動画も公開しています。
こちらもぜひご参考にしてください。
[セミナー資料/動画] Oracle Database 11g,12cからのアップグレード対策とクラウド移行
[セミナー資料/動画] Oracle Databaseはクラウドに移行するべきか否か全10ケースをご紹介
5. まとめ
多岐にわたる移行ケースに対して、様々な機能やツール、製品が提供されていますが、どれを使うのがいいのか、最新の情報を集めて検討するのは大変な作業かと思います。今回ご紹介したような、Oracle Database Migration Methods Advisor、ORAdiff、Features and Licensing など、便利なサイトや参考情報によって、移行方式検討を少しでも楽に進めていただければ幸いです。
