以前のリリースのPDBの新しいリリースへのアップグレード
PDBをUPGRADEモードで開き、パラレル・アップグレード・ユーティリティを使用して以前のリリースのPDBをCDBのリリース・レベルにアップブレードします。
-
必要に応じて、アップグレードするPDBに切り替えます。たとえば、PDB
salespdbに切り替えるには、次のコマンドを入力します。SQL> ALTER SESSION SET CONTAINER=salespdb; -
PDBをUPGRADEモードで開きます。
SQL> ALTER PLUGGABLE DATABASE OPEN UPGRADE; -
パラレル・アップグレード・ユーティリティ・コマンド(
catctl.pl、またはシェル・ユーティリティdbupgrade)を使用してPDBをアップグレードします。PDBをアップグレードする場合、パラレル・アップグレード・ユーティリティで通常使用するコマンドを使用します。ただし、アップグレードするPDBを指定するためにオプション
-c PDBnameも追加します。salespdbという名前のPDBを使用する次の例に示すとおり、PDBの名前を大文字にします。$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catctl.pl -d \ $ORACLE_HOME/rdbms/admin -c 'salespdb' -l $ORACLE_BASE catupgrd.sql -
結果を確認します。
ログのデフォルトのファイル・パスは
Oracle_base/cfgtoollogs/dbname/upgradedatetimeです。Oracle_baseはOracleベース・パス、dbnameはデータベース名、upgradedatetimeはアップグレードの日時です。日時の文字列の書式はYYYYMMDDHHMMSCで、YYYYは年、MMは月、DDは日、HHは時間、MMは分、SCは秒を表します。次に例を示します。
$ORACLE_BASE/cfgtoollogs/salespdb/upgrade20181015120001/upg_summary.log -
SQL*Plusにログインし、PDBをオープンしてアップグレード後修正を実行してから、データベースの
INVALIDオブジェクトを再コンパイルします。SQL> STARTUP; SQL> ALTER SESSION SET CONTAINER=salespdb; -
ユーティリティ
catcon.plを使用してスクリプトpostupgrade_fixups.sqlを実行します。$ORACLE_HOME/perl/bin/perl catcon.pl –c 'salespdb' -n 1 -e -b postfixups -d '''.''' /tmp/cfgtoollogs/salespdb/preupgrade/postupgrade_fixups.sql -
$ORACLE_HOME/rdbms/adminディレクトリから、ユーティリティcatcon.plを使用してutlrp.sqlを実行します。$ORACLE_HOME/perl/bin/perl catcon.pl –c 'salespdb'-n 1 -e -b comp -d '''.''' utlrp.sqlこのスクリプトは、データベース内の
INVALIDオブジェクトを再コンパイルし、現在のディレクトリにcomp0.logという名前のログ・ファイルを配置します。
親トピック: プラガブル・データベースの順次アップグレード