AutoUpgradeを使用した切断/接続アップグレードの理解
AutoUpgradeでは、以前のリリースのソース・コンテナ・データベース(CDB)からプラガブル・データベース(PDB)を切断し、新しいリリースのターゲットCDBに接続して、PDBをターゲットCDBリリースにアップグレードするために必要なすべてのステップを完了できます。
アップグレードの構成方法に応じて、AutoUpgradeを使用した切断/接続PDBアップグレードには2つのワークフローがあります。
- 1つ以上のプラガブル・データベースを1つのソースCDBから切断し、新しいリリースのターゲットCDBに接続します。
- 異なるソースCDBから複数のプラガブル・データベースを切断し、新しいリリースのターゲットCDBに接続します。
また、切断/接続操作の場合、AutoUpgradeでは、ソースPDBからターゲットPDBへのPDBのデフォルト状態の移動がサポートされるようになりました。ソースPDBでalter pluggable database save state
を設定すると、その状態がターゲットPDBに転送されるため、CDB$ROOTがオープンされるとPDBが自動的にオープンされます。
注意:
データベースに対するその他の変更と同様に、AutoUpgradeを実行して変換およびアップグレードを完了する前に、予期しないデータ損失を防ぐために信頼性のあるバックアップ計画を実装することをお薦めします。AutoUpgradeがこの手順を開始した後、切断/接続PDBアップグレードをロールバックするオプションはありません。また、フラッシュバック・データベースは、PDB変換では動作せず、元に戻せません。バックアップは唯一のフォールバック計画です。次の図は、この単一PDBの場合の切断/接続操作を示しています。
- ソースOracle Databaseが1つとターゲット・リリースのOracle Databaseが1つあります。この段階で、構成ファイルを作成し、AutoUpgradeを分析モード(
autoupgrade.jar -mode analyze
)で実行してアップグレードの準備状況を確認し、レポートされた問題を修正します。 - AutoUpgradeをデプロイ・モード(autoupgrade.jar -mode deploy)で実行します。AutoUpgradeは、構成ファイルに指定された情報を使用してPDBをターゲット・リリースに移動し、PDBを接続します。
- AutoUpgradeは、事前修正を実行した後、PDBをターゲット・リリースにアップグレードします。
ソースCDBとターゲットCDBの要件
切断/接続アップグレードを実行するには、ソースCDBとターゲットCDBが次の条件を満たしている必要があります。
- 切断/接続アップグレードを開始する前に、ターゲット・リリースCDBを作成し、CDBをオープンしていること。
- ソースCDBとターゲットCDBのエンディアン形式が同じであること。
- ターゲット・リリースCDB用に構成されたOracle Databaseコンポーネントのセットに、ソースCDBで使用可能なすべてのコンポーネントが含まれていること。
- ソースCDBとターゲットCDBに、互換性のある文字セットと各国語文字セットがあること。
- ターゲットCDBリリースへの直接のアップグレードでは、ソースCDBリリースがサポートされている必要があります。
- ソースCDBおよびターゲットCDBに対して外部認証(オペレーティング・システム認証)が有効になっていること
- ソースCDBのOracle APEXインストール・タイプは、ターゲットCDBのインストール・タイプと一致する必要があります。
- CDBに接続する非CDB Oracle Databaseには、既存の保証付きリストア・ポイント(GRP)を含めないでください。
ノート:
AutoUpgrade 22以降の更新では、AutoUpgradeを使用してOracle Data Guard構成に接続できるようになりました。AutoUpgradeは、STANDBYS=NONE
句を使用してPDBを作成します。アップグレード後、データ・ファイルをスタンバイ・データベースにリカバリすることでスタンバイを再確立できます。
切断/接続アップグレードの機能
切断/接続アップグレードを選択すると、AutoUpgrade構成ファイルの構成方法に応じて、AutoUpgradeを使用してアップグレード時に次のオプションを実行できます。
- ソースCDBにあるPDB名を保持するか、PDB名を変更できます。
- 古いファイルをすべて保持しながら、データ・ファイルのコピーをターゲットCDBに作成できます。
- データファイルをターゲットの場所にコピーしてから、ソースCDBで古いファイルを削除できます。
- 1つのPDBを処理することも、包含リストにリンクして多数のPDBを1つのアップグレード手順で処理することもできます。処理できるPDBの数の制限は、サーバー制限とCDB上のPDBの制限のみです。
例4-3 切断/接続アップグレード用のAutoUpgrade構成ファイル
PDB切断/接続アップグレード・オプションを使用するには、AutoUpgrade構成ファイル内で次の値を指定する必要があります。
- ソースCDBのシステム識別子パラメータ(パラメータ
sid
)。 - ターゲットCDB (パラメータ
target_cdb
)。 - ソースCDB内のPDBの名前、およびそれを変換する場合はターゲット変換名。
たとえば、ソースCDBがCDB122
、ターゲットCDBがcdb21x
、ソースCDB内のPDBの名前がpdb2
、ターゲットCDBに必要なPDBの変換名がdepsales
の場合は次のようになります。
global.autoupg log_dir=/home/oracle/autoupg
upg1.sid=CDB122
upg1.source_home=/u01/app/oracle/product/12.2.0/dbhome_1
upg1.target_home=/u01/app/oracle/product/19.1.0/dbhome_1
upg1.target_cdb=cdb21x
upg1.pdbs=pdb_2
upg1.target_pdb_name.pdb_2=depsales
upg1.target_pdb_copy_option.pdb_2=file_name_convert=('pdb_2','depsales')