用途
UPGRADE CATALOG
コマンドを使用すると、リカバリ・カタログ・スキーマを、旧バージョンから、RMANクライアントで必要なバージョンにアップグレードできます。
前提条件
RMANがリカバリ・カタログ所有者としてリカバリ・カタログ・データベースに接続していて、リカバリ・カタログ・データベースがオープン状態である必要があります。仮想プライベート・カタログへの接続中は、UPGRADE CATALOG
コマンドを使用できません(CREATE CATALOG
コマンドを参照)。アップグレードできるのは基本カタログのみです。
リカバリ・カタログが、RMAN実行可能ファイルに必要なバージョンより後のバージョンになっていないことが必要であり、後のバージョンの場合は、エラーが発行されます。RMANは、アップグレード中に生成したエラー・メッセージをメッセージ・ログに表示します。
Oracle Database 10gリリース1のリカバリ・カタログ・スキーマには、CREATE TYPE
権限が必要です。10gリリース1より前のリリースでリカバリ・カタログ所有者を作成し、このユーザーにRECOVERY_CATALOG_OWNER
ロールを付与しているとします。このロールにCREATE TYPE
権限が含まれていない場合は、アップグレードを実行する前に、このユーザーに明示的にCREATE TYPE
を付与する必要があります。
リカバリ・カタログをOracle Database 12cリリース1 (12.1.0.2)にアップグレードしている場合、リカバリ・カタログ権限を管理するdbmsrmansys.sql
スクリプトを実行する必要があります。さらに、仮想プライベート・カタログが使用されている場合、仮想プライベート・カタログをアップグレードするdbmsrmanvpc.sql
スクリプトを実行する必要があります。Oracle Database 12cリリース1 (12.1.0.2)以降、リカバリ・カタログ・データベースはOracle Database Enterprise Editionを使用する必要があります。
関連項目:
リカバリ・カタログをOracle Database 12cリリース1 (12.1.0.2)にアップグレードする手順については、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。
使用上の注意
アップグレードを確定するため、UPGRADE CATALOG
コマンドを続けて2回入力する必要があります。
リカバリ・カタログがすでに現行の状態になっていれば、RMANはコマンドの実行を認め、その結果、必要に応じてパッケージの再作成ができます。
ベース・リカバリ・カタログへのアップグレードで既存の仮想プライベート・カタログへの変更が必要な場合は、RMANが次にその仮想プライベート・カタログに接続したときに、これらの変更が自動的に行われます。
UPGRADE CATALOG
コマンドでは、アップグレード用のスクリプトは実行されません。かわりに、RMANは各種のSQL DDL文をリカバリ・カタログに送信し、新規の表、ビュー、列などでリカバリ・カタログ・スキーマを更新します。
セマンティクス
ありません。
例
例3-77 リカバリ・カタログのアップグレード
この例では、RMANをリカバリ・カタログ・データベースcatdb
に接続し、それを新しいバージョンにアップグレードします。
RMAN> CONNECT CATALOG rco@catdb
recovery catalog database Password: password
connected to recovery catalog database
PL/SQL package rman.DBMS_RCVCAT version 10.01.00 in RCVCAT database is too old
RMAN> UPGRADE CATALOG;
recovery catalog owner is RCO
enter UPGRADE CATALOG command again to confirm catalog upgrade
RMAN> UPGRADE CATALOG;
recovery catalog upgraded to version 11.01.00
DBMS_RCVMAN package upgraded to version 11.01.00
DBMS_RCVCAT package upgraded to version 11.01.00