日本語PDF

4.8 fileNameConversionSpec

目的

fileNameConversionSpec副次句を使用すると、古いファイル名に基づいて生成する新しいファイル名のパターンを1つ以上指定できます。これは出力ファイル名を生成する1つの方法として、BACKUPCONVERT、およびDUPLICATEとともに使用します。

使用上のノート

文字列パターンのルールと、このルールがファイルの命名方法に与える影響は、初期化パラメータDB_FILE_NAME_CONVERTの場合と同じです。カッコ内には、偶数の文字列パターンを指定してください。

古い名前に基づいて新しいファイル名を生成する際、RMANは元のファイル名を文字列パターンの各ペアの最初のメンバーと比較します。RMANによって元の名前のサブストリングであるパターンが最初に検出されると、マッチしたサブストリングがペアの2番目のメンバーで置換されて新しいファイル名が生成されます。

パターン・マッチは、ファイル名の1文字目からである必要はありません。次のコマンドは、データファイル/disk1/dbs/users.dbfのイメージ・コピーを/disk1/newdbs/users.dbfとして作成します。

BACKUP AS COPY
    DB_FILE_NAME_CONVERT = ('dbs','newdbs');
    TABLESPACE users;

指定した変換元ファイル名にマッチするものが複数ある場合、RMANは、パターンのリストの最初のマッチを使用して新しいファイル名を生成します。次のコマンドの場合、パターンdbsがファイル名と一致するので、2番目のパターン/disk1との比較は行われず、前述の例と同じ結果になります。

BACKUP AS COPY
    DB_FILE_NAME_CONVERT = ('dbs','newdbs','/disk1','/newdisk')
    TABLESPACE users;

操作対象のソース・ファイルがOracle Managed Filesの場合、CONVERT TABLESPACECONVERT DATABASE、およびBACKUP AS COPYコマンドでは、fileNameConversionSpecを使用しソース・ファイル名を新しい出力ファイル名に変換することはできません。自動ストレージ管理(ASM)または通常のファイル・システム・ストレージにあるOracle Managed Filesの場合、データベースで出力ファイルのファイル名が生成できることが必要です。たとえば、ASM以外のストレージのデータファイルのOMFファイル名は、次の形式である場合があります。

/private/boston/datafile/01_mf_system_ab12554_.dbf

ASMストレージのOMFファイル名は、次の形式である場合があります。

+DISK/boston/datafile/system.256.4543080

OMFファイル名の生成および管理はデータベースでのみ行えます。通常、異なるディスク・グループまたは異なるOMFの場所の名前をOMFファイル名に置き換えても、新しい場所に有効なファイル名は生成されません。OMFを別の場所に保存するためにOMFファイル名を変換する場合、かわりにFORMAT句などをこれらのコマンドとともに使用して新しい出力場所を指定し、データベースでその出力ファイル名を管理できるようにします。

構文

fileNameConversionSpec::=

セマンティクス

構文要素 説明

string_pattern

ファイル名の変換に使用される文字列のペアを指定します。たとえば、次のように値を文字列パターンとして設定できます。

DB_FILE_NAME_CONVERT = ('str1','str2','str3', 'str4' )

この例では、str1は元のファイル名とマッチさせるパターンで、str2は生成されるファイル名でstr1と置換するパターンで、str3は元のファイル名とマッチさせるパターンで、str4は生成されるファイル名でstr3と置換するパターンです。

ノート: このパラメータにはプライマリ置換文字列とスタンバイ置換文字列の複数のペアを指定できますが、Oracle Database 12cリリース2 (12.2)以降では、ペア数を99に制限することをお薦めします。

例4-17 単一の変換ペアを持つDB_FILE_NAME_CONVERTの使用

この例では、表領域usersにはディレクトリ/disk1/oradata/prod/にあるデータファイルが含まれており、表領域toolsには/disk1/oradata/prod/にあるデータファイルが含まれています。変換元の各データファイルについて、データファイル名のサブストリングとしてdisk1/oradata/prodがある場合は、この文字列をdisk2に置換してイメージ・コピー名が作成されます。

BACKUP AS COPY 
  DB_FILE_NAME_CONVERT = ('disk1/oradata/prod','disk2')
  TABLESPACE users, tools;

例4-18 複数の変換ペアを持つDB_FILE_NAME_CONVERTの使用

この例では、例4-17で説明したデータファイルと同じデータファイルのイメージ・コピーを作成します。各ペアの最初の文字列で、ソース・データファイルの名前と比較するパターンを指定します。各ペアの2番目の文字列は、イメージ・コピーの名前を生成するときに使用する置換パターンです。

BACKUP AS COPY 
    DB_FILE_NAME_CONVERT=('/disk1/oradata/prod/users','/disk2/users',
                          '/disk1/oradata/prod/tools','/tmp/tools')
    TABLESPACE tools, users;

このコマンドの次のサンプル出力は、RMANで、変換ペアを使用して出力イメージ・コピーに名前を付ける方法を示しています。

Starting backup at 08-MAR-13
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile file number=00027 name=/disk1/oradata/prod/tools01.dbf
output file name=/tmp/tools01.dbf tag=TAG20130308T143300 RECID=33 STAMP=616689181
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
channel ORA_DISK_1: starting datafile copy
input datafile file number=00028 name=/disk1/oradata/prod/users01.dbf
output file name=/disk2/users01.dbf tag=TAG20130308T143300 RECID=34 STAMP=616689182
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 08-MAR-13
 
Starting Control File and SPFILE Autobackup at 08-MAR-13
piece handle=/disk2/PROD/autobackup/2013_03_08/o1_mf_s_616689184_2z13s1kx_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 08-MAR-13