エイリアス名(またはエイリアス)は、システム生成のファイル名を使用するのではなく、Oracle ASMファイルをより簡単に参照するための手段です。
データベース内でファイルを作成するときにファイルのエイリアスを作成したり、ALTER DISKGROUP
文のADD ALIAS
句を使用して既存のファイルにエイリアスを追加したりできます。エイリアスは、システム生成またはユーザー作成のOracle ASMディレクトリで作成できます。エイリアスにはディスク・グループ名を含める必要があります。ルート・レベル(+
)ではエイリアスを作成できません。
ASMCMDを使用したエイリアスの作成の詳細は、「mkalias」を参照してください。
この項では、次の項について説明します。
ALTER DISKGROUP
文のADD
ALIAS
句を使用して、Oracle ASMファイル名のエイリアス名を作成します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。
例5-4では、システム生成のファイル名に新しいエイリアス名を追加します。
例5-4 Oracle ASMファイル名のエイリアス名の追加
ALTER DISKGROUP data ADD ALIAS '+data/orcl/second.dbf' FOR '+data/orcl/datafile/mytable.342.123456789';
ALTER DISKGROUP
文の RENAME ALIAS
句を使用して、Oracle ASMファイル名のエイリアス名を変更します。新旧のエイリアス名は、エイリアス名の完全ディレクトリ・パスで構成されている必要があります。
例5-5では、エイリアス名を変更します。
エイリアス名を変更しても、エイリアスに対するデータベース参照は更新されません。
例5-5 Oracle ASMファイル名のエイリアス名の変更
ALTER DISKGROUP data RENAME ALIAS '+data/orcl/datafile.dbf' TO '+data/payroll/compensation.dbf';
ALTER DISKGROUP
文のDROP ALIAS
句を使用して、Oracle ASMファイル名のエイリアスを削除します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。エイリアスが参照する基礎となるファイルは変更されません。
例5-6では、エイリアスを削除します。
例5-7は、システム生成のファイル名を削除しようとしており、この構文は許可されないため、失敗します。
例5-6 Oracle ASMファイル名のエイリアス名の削除
ALTER DISKGROUP data DROP ALIAS '+data/payroll/compensation.dbf';
例5-7 Oracle ASMファイル名のエイリアス名の削除
ALTER DISKGROUP data DROP ALIAS '+data/orcl/datafile/mytable.342.123456789';
ALTER DISKGROUP
文のDROP
FILE
句を使用して、ディスク・グループからOracle ASMファイルおよび関連するエイリアスを削除できます。削除するファイルを指定する場合は、完全修飾ファイル名またはエイリアス名を使用する必要があります。エイリアスを削除しても、ファイルシステム上で基礎となるファイルは削除されません。
ファイルを削除する必要がある理由には、次のようなものがあります。
エイリアスを使用して作成されるファイルはOracle Managed Fileではありません。そのため、このファイルは自動的に削除されません。
データベースの特定の時間におけるリカバリにより、表領域が作成される前の時間にデータベースがリストアされる可能性があります。リストアによって表領域は削除されませんが、リストアされたデータベースでこの表領域(またはそのデータファイル)は参照されていません。このデータファイルは手動で削除できます。
例5-8では、ファイルとエイリアスの両方をディスク・グループから削除する際に、ファイルのエイリアス名を使用します。
例5-9では、ファイルおよび関連エイリアスを削除する際に、Oracle Managed Files(システム生成)のファイル名を使用します。
例5-8 エイリアス名を使用したファイルとエイリアスのディスク・グループからの削除
ALTER DISKGROUP data DROP FILE '+data/payroll/compensation.dbf';
例5-9 システム生成の名前を使用したファイルとエイリアスのディスク・グループからの削除
ALTER DISKGROUP data DROP FILE '+data/orcl/datafile/mytable.342.123456789';