Oracle DB移行において なぜ”論理的”な移行方法が重要か
Oracle ACE Proの渡部です。
Oracleデータベースを移行する方法は、論理的な移行方法と物理的な移行方法に大別されます。
とはいえ、現場で頻繁に使用されるのは論理的な移行方法です。
本記事では、Oracleデータベースの移行において、なぜ"論理的"な移行方法が重要なのかを説明します。
Oracleデータベース移行方法の分類
Oracleデータベースを移行するには、非常に多くの方法があります。
- Data Pump
- RMAN Backup/Restore
- RMAN Duplicate
- Transportable Tablespaces
- Full Transportable export/import
- RMAN Transportable Tablespaces Backup Sets
- PDB Unplug/Plug
- PDB Refreshable Clones
- Data Guard
- GoldenGate
- など
これらの移行方法は、論理的な移行方法(論理移行)と物理的な移行方法(物理移行)に大別されます。
論理移行とは、移行元DBからオブジェクトとデータをエクスポートし、移行先DBにそれらをインポートする移行方法です。
論理移行に分類される移行方法には、Data Pumpがあります。
論理移行で移行した移行先DBは、使用者の観点からは移行元DBと同じに見えます。データは同じであり、SELECT文は同じ結果を返します。
しかし、データベースの内部構造は、移行元DBと移行先DBで異なります。データファイルにおけるデータブロックの配置や、データブロック内のデータ状態は、移行元DBと移行先DBで通常異なる状態になります。
物理移行とは、移行元DBのデータファイルを、そのままターゲットシステムにコピーすることをベースにする移行方法です。
論理移行に分類される移行方法には、RMAN、トランスポータブル技術、PDBのアンプラグ/プラグなどがあります。
この方式は、特に大規模なデータベースの場合、はるかに高速になる可能性があります。
物理移行では、データファイルまたはそのバックアップを移動するため、移行先データベースマシンのOSへのアクセスが必要になります。また、マルチテナントアーキテクチャではルートコンテナへのアクセスが必要になる場合もあります。
高速性は物理移行が優れます。ただし、現場で頻繁に使用されるのは論理移行です。
論理移行には、いくつかの利点があるためです。
論理移行の利点
Data Pumpを使用した論理移行を前提に、論理移行の利点について整理します。
論理移行の大きな利点は、
- 移行元DBと移行先DBが異なる構成であっても移行が可能である
という点です。
具体的には、論理移行では、移行元DBと移行先DBが以下の点で異なっていても移行できます。
- 異なるバージョン (≒アップグレードを伴う移行)
- 異なるエンディアン
- 異なるエディション (若干の配慮は必要)
- 異なるキャラクタセット
- CDB / 非CDB
- 暗号化 / 非暗号化
- オンプレミスOracleからAutonomous DBへ
- など
特に、移行元DBと移行先DBが異なるバージョンであっても移行が可能である利点は、極めて重要です。
なぜなら、たいていのOracleデータベース移行は、Oracleのアップグレードを伴うためです。
なお、移行元DBと移行先DBの構成が異なっている場合、物理移行は一切使用できないというわけではありません。
たとえば、トランスポータブル系の物理移行は、一部の異なる"構成"間の移行をサポートできます。
ただ、サポートできる範囲や使用できる条件に制約があるため、これらに注意して使う必要があります。
異なる構成のDB間の移行で使える移行方法をOracle Migration Methods Advisorで調べる
それでは、具体的に「異なる構成のDB間の移行においてどの移行方法が使えるのか?」をOracle Migration Methods Advisorを使って調べてみます。
Oracle Migration Methods Advisorを使ってOracle DBのOCI移行方法を調べる
異なるバージョン間の移行 (アップグレードを伴う移行)
以下の3パターンの移行において、使える移行方法をOracle Migration Methods Advisorで調べてみます。
- 19c EE CDB Linux → 19c BaseDB 《同じバージョン間の移行 / 比較の基準》
- 18c EE CDB Linux → 19c BaseDB
- 12.2.0.1 EE CDB Linux → 19c BaseDB
それぞれのパターンで、Oracle Migration Methods Advisorから"Manual Methods"として推奨される移行方法は以下の通りです。

- Data Pump Conventional Export/Import
- Data Pump Full Transportable
- Data Pump Transportable Tablespace
- RMAN Cross-Platform Transportable PDB
- RMAN Cross-Platform Transportable Tablespace Backup Sets
- RMAN DUPLICATE from an Active Database
- RMAN Transportable Tablespace with Data Pump
- Remote Cloning a PDB
- Replication-based migration - Logical
- Replication-based migration - Physical
- Unplugging/Plugging a PDB
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects

- Data Pump Conventional Export/Import
- Data Pump Full Transportable
- Data Pump Transportable Tablespace
- Replication-based migration - Logical
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects

- Data Pump Conventional Export/Import
- Data Pump Full Transportable
- Data Pump Transportable Tablespace
- Replication-based migration - Logical
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects
上記の結果から以下の点が分かります。
- 異なるバージョン間の移行(18c/12.2.0.1 → 19c)であっても、論理移行に分類される以下の移行方法は使用できる
- Data Pump Conventional Export/Import
- Replication-based migration - Logical
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects
- 異なるバージョン間の移行(18c/12.2.0.1 → 19c)では、物理移行に分類される以下の移行方法が使えない
- RMAN Cross-Platform Transportable PDB
- RMAN Cross-Platform Transportable Tablespace Backup Sets
- RMAN DUPLICATE from an Active Database
- RMAN Transportable Tablespace with Data Pump
- Remote Cloning a PDB
- Replication-based migration - Physical
- Unplugging/Plugging a PDB
- Data Pump Full Transportable, Data Pump Transportable Tablespace については、異なるバージョン間の移行(18c/12.2.0.1 → 19c)でも使用できる。
異なるエンディアン間の移行 (プラットフォームの変更を伴う移行)
以下の2パターンの移行において、使える移行方法をOracle Migration Methods Advisorで調べてみます。
- 19c EE CDB Linux → 19c BaseDB 《同じバージョン間の移行 / 比較の基準》
- 19c EE CDB UNIX(ビッグエンディアン) → 19c BaseDB
Oracle Migration Methods Advisorから、"Manual Methods"として推奨される移行方法は以下の通りです。

- Data Pump Conventional Export/Import
- Data Pump Full Transportable
- Data Pump Transportable Tablespace
- RMAN Cross-Platform Transportable PDB
- RMAN Cross-Platform Transportable Tablespace Backup Sets
- RMAN DUPLICATE from an Active Database
- RMAN Transportable Tablespace with Data Pump
- Remote Cloning a PDB
- Replication-based migration - Logical
- Replication-based migration - Physical
- Unplugging/Plugging a PDB
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects

- Data Pump Conventional Export/Import
- Data Pump Full Transportable
- RMAN CONVERT Transportable Tablespace with Data Pump
- Replication-based migration - Logical
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects
上記の結果から以下の点が分かります。
- 異なるエンディアン間の移行 (ビッグエンディアン→ リトルエンディアン)であっても、論理移行に分類される以下の移行方法は使用できる
- Data Pump Conventional Export/Import
- Replication-based migration - Logical
- SQL Developer and INSERT Statements to Migrate Selected Objects
- SQL Developer and SQL*Loader to Migrate Selected Objects
- 異なるエンディアン間の移行 (ビッグエンディアン→ リトルエンディアン)では、物理移行に分類される以下の移行方法が使えない
- RMAN Cross-Platform Transportable PDB
- RMAN Cross-Platform Transportable Tablespace Backup Sets
- RMAN DUPLICATE from an Active Database
- RMAN Transportable Tablespace with Data Pump
- Remote Cloning a PDB
- Replication-based migration - Physical
- Unplugging/Plugging a PDB
- Data Pump Full Transportable, RMAN CONVERT Transportable Tablespace with Data Pump については、異なるエンディアン間の移行 (ビッグエンディアン→ リトルエンディアン)でも使用できる。
まとめ
論理移行には、「移行元DBと移行先DBが異なる構成であっても移行が可能である」という利点があります。
Oracleのアップグレードを伴うOracleデータベース移行で論理移行を使用できるため、多くのOracleデータベース移行では論理移行が使用されます。
[参考] データベースにおける「論理」と「物理」
データベースにおける「論理」と「物理」について理解するには、以下の記事が役立つかもしれません。
データベース レプリケーションの分類(物理 or 論理)
論理バックアップの注意点と物理バックアップの薦め
[宣伝] Oracle DBのOCI移行はコーソルへ!
Oracle DBのOCI移行はコーソルへお任せ下さい。
コーソルはORACLE MASTER Platinum 累計取得者数No.1
コーソルからデータベース関連製品をご購入いただくと、ORACLE MASTER Platinum 単年取得者数7年連続No.1、2016年6月以降 累計保持者数No.1という指標に裏付けされた高い技術力により、安心してOracleを導入/利用いただけます。

ORACLE MASTER Platinumとは、2日間にわたる実技試験により認定されるOracle Database最高難度の資格です。
グローバルで有効な資格であり、海外では"Oracle Certified Master"と呼ばれます。
ORACLE MASTER Platinumとは何か / コーソルはPlatinum取得者数No.1!
多数のOracle関連書籍を執筆

- オラクルマスター教科書 Gold DBA Oracle Database Administration II : 渡部 亮太 , 舛井 智行, 峯岸 隆一
https://www.amazon.co.jp/dp/479817436X/ (2022年5月27日 発売)
- オラクルマスター教科書 Silver SQL Oracle Database SQL : 渡部 亮太 , 舛井 智行, 峯岸 隆一
https://www.amazon.co.jp/dp/4798172367/ (2021年9月13日 発売)
- オラクルマスター教科書 Silver DBA Oracle Database Administration I : 渡部 亮太 , 舛井 智行 , 杉本 篤信 , 西田 幸平
https://www.amazon.co.jp/dp/4798166359/ (2021年5月28日 発売)
- オラクルマスター教科書 Bronze DBA Oracle Database Fundamentals : 渡部 亮太 , 岡野 平八郎 , 鈴木 俊也
https://www.amazon.co.jp/dp/4798166367/ (2020年9月17日 発売)
- オラクルマスター教科書 Gold Oracle Database 12c : 渡部 亮太 , 岡野 平八郎
https://www.amazon.co.jp/dp/4798147958/ (2018年8月8日 発売)
- Oracleの基本 ~ データベース入門から設計/運用の初歩まで : 渡部 亮太 , 相川 潔 , 日比野 峻佑 , 岡野 平八郎 , 宮川 大地
https://www.amazon.co.jp/dp/4774192511/ (2017年9月22日 発売)
- プロとしてのOracleアーキテクチャ入門【第2版】 : 渡部 亮太
http://www.amazon.co.jp/dp/4797384085/ (2015年4月25日 発売)
- プロとしてのOracle運用管理入門 : 渡部 亮太
http://www.amazon.co.jp/dp/4797355123/ (2009年9月25日 発売)
- プロとしてのOracleアーキテクチャ入門 : 渡部 亮太 , 森坂 康人
http://www.amazon.co.jp/dp/4797349808/ (2008年8月22日 発売)
- プロとしてのOracle入門 : 松下 雅, 舛井 智行, 古賀 加奈
http://www.amazon.co.jp/dp/4797349433/ (2008年10月29日 発売)
- Oracle Database 10g Oracle Enterprise Manager 逆引きクイックリファレンス : 舛井 智行, 青木 武士, 松下 雅
http://www.amazon.co.jp/dp/4797349433/ (2007年11月27日 発売)
Oracle DatabaseのDBAサービスを提供可能
Oracle Databaseについても製品販売、製品サポート、製品の導入を行います。また、リモート回線経由でスポット的なDBA実務を行うリモートDBAサービス、コンサルティングやベンダコントロールを含めたOracle Databaseプロフェッショナルサービスを時間制で提供する時間制コンサルサービスも提供しています。
データベース運用保守なら常駐しないリモートDBA
基幹系DB運用支援および製品サポートについては、3拠点体制による24時間365日対応が可能です。

コーソルは多数のデータベース関連製品を取り扱っています
コーソルは、Oracle Databaseをはじめとするデータベース製品に関する深い知識を活かし、多数のデータベース関連製品を取り扱っております。
- オラクル製品全般 (Oracle Database, Oracle Cloud, Oracle GoldenGate, Oracle WebLogic Serverなど)
- Dbvisit Standby
- SharePlex for Oracle
- CData Sync
- Qlik Replicate
- Solarwinds Database Performance Analyzer (DPA)
- Toad for Oracle / Toad for SQL Server
- MaxGuage
- Spotlight for Oracle / Spotlight for SQL Server
- SIOS LifeKeeper
- Delphix
- PISO
- D'amo
- Nutanix Database Service (NDB)
これらの製品について、販売・導入・運用を様々な形でご支援します。お困りの際はぜひ弊社にお声がけくださいませ。
