2.4 ALLOCATE CHANNEL
目的
ALLOCATE CHANNEL
を使用すると、チャネル(RMANとデータベース・インスタンスとの接続)を手動で割り当てることができます。ALLOCATE CHANNEL
コマンドは、RUN
ブロック内で発行する必要があります。コマンドを発行するブロック内に存在するチャネルのみを割り当てることができます。
前提条件
ターゲット・インスタンスを事前に起動する必要があります。
使用上の注意
手動で割り当てたチャネルと、CONFIGURE
を指定して自動的に割り当てたチャネルは区別されます。自動チャネルは、手動でチャネルを割り当てていないすべてのRMANのジョブに適用されます。自動チャネル構成を、RUN
コマンド内で手動で割り当てたチャネルでオーバーライドすることはできますが、手動チャネルをALLOCATE CHANNEL
で指定した後で、BACKUP
DEVICE TYPE
またはRESTORE
DEVICE TYPE
を使用して、自動チャネルを使用することはできません。
複数チャネル
割り当てることができるチャネルは最大255で、チャネル当たり最大64ファイルをパラレルに読み取ることができます。ジョブ内の並列度は、割り当てるチャネル数で制御できます。複数チャネルを同時に割り当てると、1つのジョブで複数のバックアップ・セットやディスク・コピーをパラレルに読み書きできます。こうして、各チャネルが別々のバックアップ・セットまたはコピーの操作を行います。
ディスクへのバックアップを行う場合、通常は、出力デバイスごとにチャネルを1つ割り当てます(例2-7を参照)。ただし、RMANが、ストライプ化されたファイル・システムまたはASMディスク・グループに対して書込みを行う場合は、複数のチャネルを使用することでパフォーマンスを向上できます。テープにバックアップを作成する場合は、一般に、テープ・デバイスの数を多重化されたコピー数で除算した数が、テープ・チャネルの数に等しくなるようにします(例2-8を参照)。
Oracle RAC環境のチャネル
すべてのOracle RACインスタンスのSYS
およびSYSBACKUP
ユーザーのパスワードが同じである場合、ALLOCATE
またはCONFIGURE
コマンドのCONNECT
オプションでパスワードを指定する必要はありません。user
@
database
形式の接続文字列を使用すると、RMANセッションの開始時にTARGET
接続で使用されたものと同じパスワードが自動的に使用されます。
セマンティクス
構文要素 | 説明 |
---|---|
|
RMANと補助データベース・インスタンスとの接続を指定します。 補助インスタンスは、 関連項目: データベースの複製方法は |
|
RMANとターゲット・データベース・インスタンスとの接続を指定します。 接続するたびに、ターゲット・インスタンスまたは補助インスタンスでデータベース・サーバー・セッションが開始されます。このセッションで、RMANバックアップのバックアップ、リストアまたはリカバリが実行されます。共有サーバー・セッションには接続できません。
各チャネルは、一度に1つのバックアップ・セットまたはイメージ・コピーを使用します。RMANは、ジョブ終了時に自動的にチャネルを解放します。 注意: チャネル名の接頭辞に |
|
バックアップ用のストレージ・タイプを指定します。 注意: 関連項目: 「 |
割り当てたチャネルの制御オプションを指定します。順次I/Oデバイスのチャネル・パラメータはプラットフォームによって異なります(例2-6を参照)。 関連項目: |
例
例2-6 バックアップ用チャネルの手動割当て
この例では、データベース全体およびアーカイブREDOログのバックアップ用に1つのテープ・チャネルを割り当てます。PARMS
パラメータで、wholedb_mf
というOracle Secure Backupメディア・ファミリを指定しています。
RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS 'ENV=(OB_MEDIA_FAMILY=wholedb_mf)'; BACKUP DATABASE; BACKUP ARCHIVELOG ALL NOT BACKED UP; }
例2-7 複数ディスクへのバックアップの分散
ディスクにバックアップする場合は、複数のディスク・ドライブに分散したバックアップが実行できます。ディスク・ドライブごとにDEVICE TYPE DISK
チャネルを1つ割り当て、出力ファイルごとにディスクが異なるようにフォーマット文字列を指定します。
RUN { ALLOCATE CHANNEL disk1 DEVICE TYPE DISK FORMAT '/disk1/%U'; ALLOCATE CHANNEL disk2 DEVICE TYPE DISK FORMAT '/disk2/%U'; BACKUP DATABASE PLUS ARCHIVELOG; }
例2-8 テープへのバックアップの複数コピーの作成
この例では、stape1
、stape2
、stape3
およびstape4
の4つのテープ・ドライブを書込みに使用できます。SET
BACKUP COPIES
コマンドを使用して、データベース・バックアップの同じコピーを2つ作成するように、RMANに対して指定します。一般に、テープ・チャネルの数は、多重化されたコピー数でテープ・デバイスの数を除算した数と等しくするため、2つのチャネルを割り当てます。この場合、BACKUP_TAPE_IO_SLAVES
初期化パラメータをTRUE
に設定する必要があります。
Oracle Secure BackupのOB_DEVICE_
n
パラメータでは、n
にバックアップ・ピースのコピー数を指定します。RMANは、各バックアップ・ピースのコピー1をstape1
とstape2
のテープ・ドライブに書き込み、各バックアップ・ピースのコピー2をstape3
とstape4
のドライブに書き込みます。このようにして、データベース・バックアップの各コピーは、2つのテープ・ドライブ間で分散され、各ドライブ上にデータの一部が格納されます。
RUN { ALLOCATE CHANNEL t1 DEVICE TYPE sbt PARMS 'ENV=(OB_DEVICE_1=stape1,OB_DEVICE_2=stape3)'; ALLOCATE CHANNEL t2 DEVICE TYPE sbt PARMS 'ENV=(OB_DEVICE_1=stape2,OB_DEVICE_2=stape4)'; SET BACKUP COPIES 2; BACKUP DATABASE; }
例2-9 データベース複製用の補助チャネルの割当て
この例では、バックアップから複製データベースが作成されます。複製用に構成されたチャネルでAUXILIARY
オプションが指定されていない場合でも、RMANは、そのチャネルを使用できます。この例では、事前に構成されているSBTチャネルがないため、補助SBTチャネルを手動で割り当てます。
RUN { ALLOCATE AUXILIARY CHANNEL c1 DEVICE TYPE sbt; DUPLICATE TARGET DATABASE TO dupdb DB_FILE_NAME_CONVERT '/disk2/dbs/','/disk1/' SPFILE PARAMETER_VALUE_CONVERT '/disk2/dbs/', '/disk1/' SET LOG_FILE_NAME_CONVERT '/disk2/dbs/', '/disk1/'; }
関連項目:
DB_FILE_NAME_CONVERT
パラメータの詳細は、Oracle Databaseリファレンスを参照してください