プライマリ・コンテンツに移動
Oracle® Databaseバックアップおよびリカバリ・リファレンス
12cリリース1 (12.1)
B71298-08
目次へ移動
目次
索引へ移動
索引

前
次

CREATE CATALOG

用途

CREATE CATALOGコマンドを使用すると、リカバリ・カタログを作成できます。

リカバリ・カタログは、ベース・リカバリ・カタログ または仮想プライベート・カタログにすることができます。Oracle Database 12cリリース1 (12.1.0.1)では、CREATE VIRTUAL CATALOGコマンドを明示的に使用して仮想プライベート・カタログを作成する必要があります。Oracle Database 12cリリース1 (12.1.0.2)では、仮想プライベート・カタログは、仮想プライベート・カタログ所有者にカタログ権限が付与されるときに自動的に作成されます。

  • ベース・リカバリ・カタログは、一連のターゲット・データベースのRMANメタデータを含むデータベース・スキーマです。

  • 仮想プライベート・カタログは、ベース・リカバリ・カタログのサブセットへのユーザー・アクセスを制限する一連のセキュリティ・ポリシーです。

関連項目:

  • リカバリ・カタログの作成方法は、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。

  • リカバリ・カタログと、RMAN環境の他のコンポーネントの互換性の要件については、「RMANの互換性」を参照してください

前提条件

このコマンドは、RMANプロンプトでのみ実行してください。RMANをCATALOGコマンドライン・オプションまたはCONNECT CATALOGコマンドを通じてリカバリ・カタログ・データベースに接続し、カタログ・データベースをオープンする必要があります。ターゲット・データベースへの接続は不要です。

ベース・リカバリ・カタログのリカバリ・カタログ所有者は、RECOVERY_CATALOG_OWNERロールを付与されている必要があります。リカバリ・カタログは、リカバリ・カタログ所有者のデフォルト表領域に作成されます。

注意:

Oracle Database 12cリリース1 (12.1.0.2)以降、リカバリ・カタログ・データベースはEnterprise Editionを使用する必要があります。

Oracle Database 12cリリース1 (12.1.0.1)では、仮想プライベート・カタログを所有するデータベース・ユーザーはRECOVERY_CATALOG_OWNERロールを付与されている必要があります。また、このユーザーには、リカバリ・カタログ表が格納される表領域に対する権限も付与されている必要があります。Oracle Database 12cリリース1 (12.1.0.2)では、仮想プライベート・カタログを所有するデータベース・ユーザーにCREATE SESSION権限を付与するだけで十分です。Oracle Database 12cリリース1 (12.1.0.2)以降、仮想プライベート・カタログはOracle Database Enterprise Editionを使用する場合のみ作成できます。

仮想プライベート・カタログを作成する場合は、ベース・リカバリ・カタログの所有者がRMANのGRANTコマンドを使用して、CATALOGまたはREGISTERのいずれかの権限をこのユーザーに付与している必要があります(例2-69を参照)。

Oracle Database 10gリリース以前のRMANクライアントの場合は、RMANクライアントが仮想カタログに接続する際の制約について、CONNECT CATALOGの説明を参照してください。

使用上の注意

リカバリ・カタログは、通常リカバリ・カタログ専用に作成されたデータベースに作成します。SYSまたはSYSBACKUPのような特権的なスキーマで、リカバリ・カタログを作成しないでください。

リカバリ・カタログは、1つ作成して、中央管理されているRMANリポジトリとして、複数のデータベースで使用するようにしてください。そのため、このカタログは、ベース・リカバリ・カタログと呼ばれます。

ベース・リカバリ・カタログ所有者は、GRANTREVOKEを使用して、他のデータベース・ユーザーからのカタログへのアクセスを制限できます。制限を受けるユーザーでも、自分専用のメタデータ(仮想プライベート・カタログと呼ばれます)への完全な読み/書き両用アクセス権を持っています。RMANメタデータは、仮想プライベート・カタログ所有者のスキーマに格納されます。ベース・リカバリ・カタログ所有者は、それぞれの仮想カタログ・ユーザーがアクセスできる内容を制御します。

10.2以下のリリースのRMANで仮想カタログを使用する場合は、追加手順の実行も必要です。仮想プライベート・カタログを使用する前に、リカバリ・カタログ・データベースに仮想カタログ所有者として接続し、次のPL/SQLプロシージャを実行してください(base_catalog_ownerは、ベース・リカバリ・カタログを所有するデータベース・ユーザーです)。

base_catalog_owner.DBMS_RCVCAT.CREATE_VIRTUAL_CATALOG

関連項目:

RECOVERY_CATALOG_OWNERロールの詳細は、『Oracle Database管理者ガイド』を参照してください。

セマンティクス

構文要素 説明

VIRTUAL

仮想プライベート・カタログを既存のリカバリ・カタログ内に作成します。

このコマンドは、RMANをリカバリ・カタログ・データベースに仮想カタログ・ユーザーとして接続した後で実行してください。

注意: 仮想プライベート・カタログのメカニズムはすべて、リカバリ・カタログ・スキーマ自体にあります。セキュリティは、RMANクライアントではなく、カタログ・データベースから提供されます。

例2-68 リカバリ・カタログの作成とデータベースの登録

SQL*Plusを起動し、管理者権限でリカバリ・カタログcatdbに接続するとします。次のようにCREATE USER文を実行して、パスワードをユーザー指定のパスワードで置き換えます(安全なパスワードの作成の詳細は、『Oracle Databaseセキュリティ・ガイド』を参照)。SQL文はデータベースcatdbにユーザーrcoを作成し、rcoユーザーにRECOVERY_CATALOG_OWNERロールを付与します。

SQL> CREATE USER rco IDENTIFIED BY password
  2  DEFAULT TABLESPACE cattbs
  3  QUOTA UNLIMITED ON cattbs;
SQL> GRANT recovery_catalog_owner TO rco;
SQL> EXIT

次に、RMANを起動し、次のRMANコマンドを実行して、rcoとしてリカバリ・カタログ・データベースに接続し、リカバリ・カタログを作成します。

RMAN> CONNECT CATALOG rco@catdb

recovery catalog database Password: password
connected to recovery catalog database

RMAN> CREATE CATALOG;

同じRMANセッションで、オペレーティング・システム認証を使用してターゲット・データベースに接続し、REGISTER DATABASEコマンドを使用して、カタログにこのデータベースを登録します。

RMAN> CONNECT TARGET /
RMAN> REGISTER DATABASE;
RMAN> EXIT

例2-69 仮想プライベート・カタログの作成

例2-68に示すように、リカバリ・カタログを作成し、データベースを登録してあるとします。ここで、データベース・ユーザーvpc1に仮想プライベート・カタログを作成することにします。データベース・バージョンはOracle Database 12cリリース1 (12.1.0.2)です。SQL*Plusを起動し、管理者権限でリカバリ・カタログ・データベースcatdbに接続します。vpc1ユーザーを作成し、次のようにリカバリ・カタログの所有権を付与して、パスワードをユーザー指定のパスワードで置き換えます(安全なパスワードの作成の詳細は、『Oracle Databaseセキュリティ・ガイド』を参照)。

SQL> CREATE USER vpc1 IDENTIFIED BY password
  2  DEFAULT TABLESPACE vpcusers;
SQL> GRANT CREATE SESSION TO vpc1;
SQL> EXIT

次に、RMANを起動し、カタログ所有者rcoとしてリカバリ・カタログ・データベースに接続します。デフォルトでは、仮想カタログ所有者はベース・リカバリ・カタログにアクセスできません。GRANTコマンドを使用して、仮想プライベート・カタログにvpc1へのアクセス権を付与し、(データベースprod2ではなく)データベースprod1に対してRMANが操作できるようにします。

RMAN> CONNECT CATALOG rco@catdb
 
recovery catalog database Password: password
connected to recovery catalog database

RMAN> GRANT CATALOG FOR DATABASE prod1 TO vpc1;
RMAN> EXIT;

この時点で、仮想プライベート・カタログvpc1を使用するバックアップ・オペレータは、仮想カタログの作成準備ができています。次の例では、バックアップ・オペレータがリカバリ・カタログ・データベースにvpc1として接続し、データベースprod1をvpc1に登録します。

仮想プライベート・カタログは、仮想プライベート・カタログ所有者にカタログ権限が付与されるときに自動的に作成されます。

RMAN> CONNECT CATALOG vpc1@catdb

recovery catalog database Password: password
connected to recovery catalog database

RMAN> REGISTER DATABASE prod1;
RMAN> EXIT;

このオペレータは、最終的にOracle Database 10gターゲット・データベースで仮想カタログを使用する予定なので、オペレータはPL/SQLプロシージャCREATE_VIRTUAL_CATALOGを実行してから、仮想カタログを使用する必要があります(使用上の注意」を参照)。次の例では、バックアップ・オペレータが次のようにリカバリ・カタログ・データベースにvpc1として接続し、PL/SQLプロシージャを実行します。

SQL> CONNECT vpc1@catdb
Enter password: password
Connected.
SQL> BEGIN 
  2  rco.DBMS_RCVCAT.CREATE_VIRTUAL_CATALOG;
  3  END;
  4  /