ALTER TABLESPACE
目的
ALTER
TABLESPACE
文を使用すると、既存の表領域、1つ以上のデータファイルまたは一時ファイルを変更できます。
この句では、ディクショナリ管理表領域をローカル管理表領域に変換することはできません。変換するには、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』に記載されているDBMS_SPACE_ADMIN
パッケージを使用してください。
関連項目:
表領域作成の詳細は、『Oracle Database管理者ガイド』および「CREATE TABLESPACE」を参照してください。
前提条件
SYSAUX
表領域を変更する場合は、SYSDBA
システム権限が必要です。
ALTER
TABLESPACE
システム権限を持っている場合、すべてのALTER
TABLESPACE
操作を実行できます。MANAGE
TABLESPACE
システム権限を持っている場合は、次の操作のみを実行できます。
-
表領域をオンラインまたはオフラインにする。
-
バックアップを開始または終了する。
-
表領域を読取り専用または読み書き両用にする。
-
表領域の状態を
PERMANENT
またはTEMPORARY
に変更する。 -
表領域のデフォルト・ロギング・モードを
LOGGING
またはNOLOGGING
に設定する。 -
表領域で強制ロギング・モードを有効または無効にする。
-
表領域または表領域データ・ファイルの名前を変更する。
-
UNDO表領域に対する
RETENTION
GUARANTEE
またはRETENTION
NOGUARANTEE
を指定する。 -
表領域のデータ・ファイルのサイズを変更する。
-
表領域内のデータ・ファイルに対する自動拡張を使用可能または使用禁止にする。
-
一時表領域または一時ファイルによって使用される領域の大きさを縮小する。
表領域を読取り専用にする場合、次の条件が満たされている必要があります。
-
表領域は必ずオンラインにする。
-
表領域にアクティブなロールバック・セグメントがない。
SYSTEM
表領域にはSYSTEM
ロールバック・セグメントがあるため、読取り専用にはできません。また、読取り専用表領域のロールバック・セグメントにはアクセスできないため、ロールバック・セグメントを削除してから、表領域を読取り専用にすることをお薦めします。 -
表領域がオープン・バックアップに使用されていない。バックアップの終わりに表領域内のすべてのデータファイルのヘッダー・ファイルが更新されるためです。
これらの条件を満たすために、制限モードでこの機能を実行すると有効です。制限モードでは、RESTRICTED
SESSION
システム権限を持つユーザーのみがログインできます。
構文
alter_tablespace_attrs::=
(default_tablespace_params::=、size_clause::=、datafile_tempfile_clauses::=、tablespace_logging_clauses::=、tablespace_group_clause::=、tablespace_state_clauses::=、autoextend_clause::=、flashback_mode_clause::=、tablespace_retention_clause::=、alter_tablespace_encryption::=、lost_write_protection::=)
default_tablespace_params::=
(default_table_compression::= (CREATE
TABLESPACE
の一部)、default_index_compression::= (CREATE
TABLESPACE
の一部)、inmemory_clause::= (CREATE
TABLESPACE
の一部)、ilm_clause::= (ALTER
TABLE
の一部)、storage_clause::=)
ノート:
DEFAULT
句を指定する場合、default_table_compression
、default_index_compression
、inmemory_clause
、ilm_clause
またはstorage_clause
の各句のうち、1つ以上を指定する必要があります。
tablespace_group_clause::=
tablespace_state_clauses::=
flashback_mode_clause::=
tablespace_retention_clause::=
alter_tablespace_encryption::=
tablespace_encryption_spec::=
ts_file_name_convert::=
lost_write_protection::=
セマンティクス
IF NOT EXISTS
既存の表領域を変更するには、IF EXISTS
を指定します。
ALTER
とともにIF NOT EXISTS
を指定すると、ALTER/DROP
文のIF EXISTS
句が正しくないというエラーが発生します。
tablespace
変更する表領域の名前を指定します。
表領域の変更には、次の制限事項があります。
-
tablespace
がUNDO表領域の場合、この文ではADD
DATAFILE
、RENAME
DATAFILE
、RENAME
TO
(表領域の名前の変更)、DATAFILE
...ONLINE
、DATAFILE
...OFFLINE
、BEGIN
BACKUP
およびEND
BACKUP
のみが指定可能です。 -
SYSTEM
表領域を、読取り専用または一時表領域にしたり、オフラインにすることはできません。 -
ローカル管理の一時表領域に対してこの文で指定できるのは、
ADD
句のみです。
関連項目:
自動UNDO管理およびUNDO表領域の詳細は、『Oracle Database管理者ガイド』を参照してください。
alter_tablespace_attrs
alter_tablespace_attrs
句を使用すると、表領域の属性を変更できます。
default_tablespace_params
この句を使用すると、表領域の新しいデフォルト・パラメータを指定できます。新しいデフォルト・パラメータは、後で表領域に作成されるオブジェクトに適用されます。
default_table_compression
、default_index_compression
、inmemory_clause
、ilm_clause
およびstorage_clause
句のセマンティクスは、CREATE
TABLESPACE
およびALTER
TABLESPACE
と同じです。これらの句の詳細は、CREATE
TABLESPACE
のドキュメントの「default_tablespace_params」句を参照してください。
MINIMUM EXTENT
この句は、永続的なディクショナリ管理表領域に対してのみ有効です。MINIMUM
EXTENT
句を指定すると、表領域内のすべての使用済エクステントまたは未使用エクステントの大きさが、size_clause
で指定したサイズ以上であること、およびその倍数であることが保証され、表領域における空き領域の断片化を制御できます。
MINIMUM EXTENTの制限事項
この句は、ローカル管理の表領域またはディクショナリ管理の一時表領域に対して指定できません。
関連項目:
この句の詳細は、「size_clause」 を参照してください。MINIMUM
EXTENT
を使用した領域の断片化の制御の詳細は、『Oracle Database管理者ガイド』を参照してください
RESIZE句
この句は、消失書込み保護トラッキング・データを格納するシャドウ表領域などのbigfile表領域に対してのみ有効です。1つのデータファイルのサイズを指定のサイズまで拡張または縮小できます。K
、M
、G
またはT
を使用して、それぞれKB、MB、GBまたはTB単位で指定することもできます。
smallfile表領域に新しく追加されたデータファイルまたは一時ファイルのサイズを変更するには、ALTER
DATABASE
... autoextend_clause
を使用します(「database_file_clauses」を参照)。
関連項目:
bigfile表領域については、「BIGFILE | SMALLFILE」を参照してください。
SHRINK SPACE句
この句が有効であるのは、一時表領域に対してのみです。表領域に使用される領域の大きさを縮小できます。任意指定のKEEP
句では、size_clause
で表領域の縮小後サイズの下限を定義します。これは、自動拡張可能な表領域のMAXSIZE
とは逆の機能です。KEEP
句を省略した場合は、表領域は他の記憶域属性が満たされることを条件として可能なかぎり縮小されます。
RENAME句
この句を指定すると、tablespace
の名前を変更できます。この句は、tablespace
およびそのすべてのデータファイルがオンラインで、COMPATIBLE
パラメータが10.0.0以上に設定されている場合にのみ有効です。名前の変更は、永続表領域および一時表領域の両方に対して実行できます。
tablespace
が読取り専用の場合、データファイルのヘッダーは更新されず、新しい名前は反映されません。アラート・ログに、データファイルのヘッダーが更新されなかったことが記録されます。
ノート:
バックアップからリストアしたデータファイルを使用して制御ファイルを再作成する場合、データファイルのヘッダーに古い表領域の名前が反映されていると、再作成された制御ファイルにも古い表領域の名前が反映されます。ただし、データベースが完全にリカバリされた後は、制御ファイルに新しい名前が反映されます。
tablespace
が、Oracle Real Application Clusters(Oracle RAC)環境のインスタンスに対するUNDO表領域として指定されており、データベースの起動にサーバー・パラメータ・ファイルが使用されている場合、そのサーバー・パラメータ・ファイル(SPFILE
)で、インスタンスに対するUNDO_TABLESPACE
パラメータの値は、新しい表領域の名前を反映するように変更されます。単一インスタンス・データベースで、spfileのかわりにパラメータ・ファイル(pfile)が使用されている場合、データベース管理者にpfile内の値を手動で変更することを推奨するメッセージがアラート・ログに書き込まれます。
ノート:
RENAME
句は、実行中のインスタンスのUNDO_TABLESPACE
パラメータの値を変更しません。これはUNDO表領域の機能に影響しませんが、次の文を発行してインスタンスの実行中にUNDO_TABLESPACE
の値を新しい表領域名に手動で変更することをお薦めします。
ALTER SYSTEM SET UNDO_TABLESPACE = new_tablespace_name SCOPE = MEMORY;
この文は一度だけ発行する必要があります。UNDO_TABLESPACE
パラメータがpfileまたはspfileの新しい表領域名に設定されている場合、次にインスタンスを再起動するときにパラメータが正しく設定されます。
表領域名の変更の制限事項
SYSTEM
およびSYSAUX
の各表領域の名前は変更できません。
BACKUP句
この句を使用すると、表領域のすべてのデータファイルをオンライン(ホット)・バックアップ・モードにしたり、このモードから戻すことができます。
関連項目:
-
メディア・リカバリなしでデータベースを再起動する場合の詳細は、『Oracle Database管理者ガイド』を参照してください。
-
データベース内のすべてのデータファイルに対するオンライン・バックアップ・モードの設定または解除の詳細は、「
ALTER
DATABASE
」の「BACKUP句」を参照してください。 -
個々のデータファイルをオンライン・バックアップ・モードから解除する場合の詳細は、「
ALTER
DATABASE
」の「alter_datafile_clause」を参照してください。
BEGIN
BACKUP
を指定すると、表領域を構成するデータファイルのオープン・バックアップを実行することを示すことができます。この句を指定することによって、ユーザーがこの表領域にアクセスできなくなることはありません。オープン・バックアップを開始する前に、この句を指定してください。
表領域のバックアップの開始の制限事項
表領域のバックアップの開始には、次の制限事項があります。
-
この句は、読取り専用の表領域またはローカル管理の一時表領域に対して指定できません。
-
バックアップ中は、表領域のオフラインへの正常な切替え、インスタンスの停止または表領域の別のバックアップ処理の開始は実行できません。
関連項目:
END
BACKUP
を指定すると、表領域のオンライン・バックアップが完了したことを示すことができます。オンライン・バックアップの完了後、できるだけ早くこの句を指定してください。インスタンスに障害またはSHUTDOWN
ABORT
が発生した場合、次のインスタンス起動時にメディア・リカバリ(必要に応じて、アーカイブREDOログも)が必要であるとみなされます。
表領域のバックアップの終了の制限事項
読取り専用表領域ではこの句を使用できません。
datafile_tempfile_clauses
datafile_tempfile_clausesを使用すると、データファイルまたは一時ファイルを追加および変更できます。
ADD句
ADD
を指定すると、file_specification
によって指定されたデータファイルまたは一時ファイルを表領域に追加できます。オペレーティング・システムのファイル・システム内の標準データファイルと一時ファイル、またはOracle Automatic Storage Managementディスク・グループのファイルを指定するには、file_specification
のdatafile_tempfile_spec
書式(「file_specification」を参照)を使用します。
この句は、ローカル管理の一時表領域に対して、どんな場合でも指定できる唯一の句です。
file_specification
を指定しないと、AUTOEXTEND
が有効になった100MBのOracle管理ファイルが作成されます。
データファイルまたは一時ファイルを、オンラインのローカル管理表領域、またはオンラインまたはオフラインのディクショナリ管理表領域に追加できます。なお、そのデータファイルが別のデータベースで使用中でないことを確認してください。
データファイルおよび一時ファイルの追加の制限事項
この句は、データファイルまたは一時ファイルを1つのみ含む表領域である、bigfile (単一ファイル)表領域には指定できません。
ノート:
オペレーティング・システムによっては、一時ファイルのブロックが実際にアクセスされるまで、一時ファイル用の領域が割り当てられない場合があります。領域の割当ての遅延のため、一時ファイルの作成およびサイズ変更が速くなります。ただし、後で一時ファイルが使用されるときに、十分なディスク領域を使用可能にする必要があります。問題を回避するには、一時ファイルの作成またはサイズ変更の前に、ディスクの空き領域が、新しく作成する一時ファイルまたはサイズ変更後の一時ファイルのサイズよりも大きいことを確認してください。ディスク領域に余裕を持たせておくと、関連のない操作による、予期されるディスク使用量の増加にも対応できます。その後で、作成またはサイズ変更操作を実行してください。
DROP
を指定すると、filename
やfile_number
によって指定された空のデータファイルまたは一時ファイルを表領域から削除できます。この句は、データファイルまたは一時ファイルをデータ・ディクショナリから削除し、オペレーティング・システムから削除します。この句を指定するときには、データベースがオープンしている必要があります。
ALTER
TABLESPACE
... DROP
TEMPFILE
文は、ALTER
DATABASE
TEMPFILE
... DROP
INCLUDING
DATAFILES
を指定することと同じです。
ファイルの削除の制限事項
データファイルまたは一時ファイルを削除するには、データファイルまたは一時ファイルが次の状態である必要があります。
-
空であること。
-
表領域内で最初に作成されたデータ・ファイルではないこと。この場合、かわりに表領域が削除されます。
-
ローカル管理されるディクショナリから移行された読取り専用表領域でないこと。他のすべての読取り専用表領域からのデータファイルの削除はサポートされています。
-
オフラインでないこと。
関連項目:
-
一時ファイルの削除の詳細は、「
ALTER
DATABASE
」の「alter_tempfile_clause」を参照してください。 -
データファイル番号の詳細と、データファイルの管理ガイドラインの詳細は、『Oracle Database管理者ガイド』を参照してください。
この句が有効であるのは、一時表領域を変更する場合のみです。指定した一時ファイルに使用される領域の大きさを縮小できます。任意指定のKEEP
句では、size_clause
で一時ファイルの縮小後サイズの下限を定義します。これは、自動拡張可能な表領域のMAXSIZE
とは逆の機能です。KEEP
句を省略した場合は、一時ファイルは他の記憶域属性が満たされることを条件として可能なかぎり縮小されます。
RENAME DATAFILE句
RENAME
DATAFILE
を指定すると、表領域の1つ以上のデータファイルの名前を変更できます。データベースをオープンしておくこと、および名前の変更前に表領域をオフラインにすることが必要です。それぞれのfilename
には、ご使用のオペレーティング・システムのファイル名の表記規則に従って、データファイル名を完全に指定してください。
この句では、表領域を古いファイルではなく新しいファイルに対応付けます。オペレーティング・システムのファイル名は実際には変更されません。このため、オペレーティング・システム上でこのファイル名を変更する必要があります。
関連項目:
ONLINE | OFFLINE句
これらの句を使用すると、表領域のすべてのデータファイルまたは一時ファイルを、オフラインまたはオンラインにできます。これらの句は、表領域のONLINE
またはOFFLINE
状態には影響しません。
データベースはマウントされている必要があります。tablespace
がSYSTEM
、UNDO表領域、またはデフォルトの一時表領域の場合、データベースをオープンしないでおく必要があります。
tablespace_logging_clauses
この句を使用すると、表領域のロギング特性を設定または変更できます。
logging_clause
LOGGING
を指定すると、表領域内のすべての表、索引およびパーティションのロギング属性を指定できます。表レベル、索引レベルおよびパーティション・レベルでのロギング指定によって、表領域レベルのロギング属性を上書きできます。
既存の表領域のロギング属性をALTER
TABLESPACE
文によって変更した場合、この文の実行後に作成されたすべての表、索引およびパーティションに、新しいデフォルトのロギング属性(これは後で上書きもできます)が適用されます。既存のオブジェクトのロギング属性は変更されません。
FORCE
LOGGING
モードの表領域がある場合、この文でNOLOGGING
を指定すると、表領域のデフォルト・ロギング・モードをNOLOGGING
に設定できます。ただし、この設定によって表領域のFORCE
LOGGING
モードは解除されません。
この句を使用すると、表領域で強制ロギング・モードを有効または無効にできます。データベースをオープンし、READ
WRITE
モードにしておく必要があります。この設定により、表領域のデフォルトLOGGING
モードまたはNOLOGGING
モードは変更されません。
強制ロギング・モードの制限事項
FORCE
LOGGING
は、UNDO表領域または一時表領域には指定できません。
関連項目:
FORCE
LOGGING
モードをいつ使用するかの詳細は、『Oracle Database管理者ガイド』および「表領域のロギング属性の変更: 例」を参照してください。
tablespace_group_clause
この句は、ローカル管理の一時表領域に対してのみ有効です。この句を使用すると、tablespace_group_name
表領域グループに対してtablespace
を追加または削除できます。
-
グループ名を指定すると、
tablespace
がその表領域グループのメンバーであることを示すことができます。tablespace_group_name
が存在しない場合、表領域を変更して表領域グループのメンバーにすると、その表領域グループが暗黙的に作成されます。 -
空の文字列(' ')を指定すると、
tablespace_group_name
表領域グループからtablespace
を削除できます。
表領域グループの制限事項
表領域グループは、永続表領域またはディクショナリ管理の一時表領域に対しては指定できません。
関連項目:
表領域グループの詳細は、『Oracle Database管理者ガイド』および「表領域グループの割当て: 例」を参照してください。
tablespace_state_clauses
この句を使用すると、表領域の状態を設定または変更できます。
ONLINE
を指定すると、表領域をオンラインにできます。OFFLINE
を指定すると、表領域をオフラインにし、そのセグメントへの後続のアクセスを禁止できます。表領域をオフラインにすると、そのすべてのデータファイルもオフラインになります。
ノート:
表領域を長期間オフラインにする前に、デフォルト表領域または一時表領域としてその表領域が割り当てられているユーザーに対して、表領域の割当てを変更することを検討します。表領域をオフラインにしている間は、これらのユーザーは、その表領域内でオブジェクトに対して領域を割り当てたり、領域をソートすることはできません。ユーザーへの表領域の割当ての詳細は、「ALTER USER」を参照してください。
表領域のオフライン化の制限事項
一時表領域はオフライン化できません。
OFFLINE NORMAL
NORMAL
を指定すると、システム・グローバル領域(SGA)以外にある表領域のすべてのデータファイルにあるすべてのブロックをフラッシュできます。データファイルをオンラインに戻す前に、表領域のメディア・リカバリを行う必要はありません。これはデフォルトです。
OFFLINE TEMPORARY
TEMPORARY
を指定すると、Oracle Databaseは表領域内のすべてのオンライン・データファイルに対してチェックポイントを実行しますが、すべてのファイルに対して書込みを実行できるかどうかは保証しません。この文の発行時にオフラインであるファイルでは、表領域をオンラインに戻す前に、メディア・リカバリが必要な場合があります。
OFFLINE IMMEDIATE
IMMEDIATE
を指定した場合は、表領域のファイルが使用可能であることは保証されず、チェックポイントも実行されません。表領域をオンラインに戻す前に、メディア・リカバリを行う必要があります。
ノート:
ALTER
TABLESPACE
... OFFLINE
に対するFOR
RECOVER
設定は、非推奨になっています。この構文は、下位互換性を保つためにのみサポートされています。ただし、表領域のリカバリにはトランスポータブル表領域機能を使用することをお薦めします。
関連項目:
メディア・リカバリを実行するトランスポータブル表領域の使用の詳細は、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。
READ
ONLY
を指定すると、表領域を読取り専用遷移モードに設定できます。この状態では、既存のトランザクションは完了(コミットまたはロールバック)できますが、表領域内のブロックを変更した既存のトランザクションをロールバックすること以外は、その表領域に対してさらにDML操作を行うことはできません。SYSAUX
、SYSTEM
または一時表領域は、READ
ONLY
に設定できません。
表領域が読取り専用の場合は、そのファイルを読取り専用メディアにコピーできます。その場合、SQL文のALTER
DATABASE
... RENAME
を使用して、新しいファイル位置を示すように制御ファイル内のデータファイルの名前を変更する必要があります。
関連項目:
-
読取り専用の表領域の詳細は、『Oracle Database概要』を参照してください。
READ
WRITE
を指定すると、読取り専用に指定されている表領域に対して書込み操作を実行できるようになります。
PERMANENT
を指定すると、一時表領域を永続表領域に変換できます。永続表領域とは、永続的なデータベース・オブジェクトを格納できる場所です。表領域を作成するときのデフォルトです。
TEMPORARY
を指定すると、永続表領域を一時表領域に変換できます。一時表領域とは、永続的なデータベース・オブジェクトを格納できない表領域です。一時表領域の中のオブジェクトはセッション中のみ保持されます。
一時表領域の制限事項
一時表領域には、次の制限事項があります。
-
SYSAUX
表領域には、TEMPORARY
を指定できません。 -
tablespace
を標準的なブロック・サイズで作成しなかった場合、永続表領域を一時表領域に変換できません。 -
FORCE
LOGGING
モードでは、表領域に対してTEMPORARY
を指定できません。
autoextend_clause
この句は、bigfile(単一ファイル)表領域に対してのみ有効です。この句を使用すると、表領域内の単一のデータファイルに対して自動拡張を使用可能または使用禁止にできます。smallfile表領域に新しく追加されたデータファイルまたは一時ファイルの自動拡張を使用可能または使用禁止にするには、ALTER
DATABASE
文でautoextend_clause
を使用します(「database_file_clauses」を参照)。
関連項目:
-
bigfile(単一ファイル)表領域については、『Oracle Database管理者ガイド』を参照してください。
-
autoextend_clause
の詳細は、「file_specification」を参照してください。
flashback_mode_clause
この句を使用すると、後続のFLASHBACK
DATABASE
操作でこの表領域を使用するかどうかを指定できます。
-
FLASHBACK
モードをオンにするには、データベースはマウント済で、クローズ状態である必要があります。 -
FLASHBACK
モードをオフにするには、データベースはマウント済(READ
WRITE
のオープン状態またはクローズ状態)である必要があります。
この句は一時表領域では無効です。
この句の詳細は、「CREATE TABLESPACE」を参照してください。
関連項目:
データベースのフラッシュバックの詳細は、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。
tablespace_retention_clause
この句のセマンティクスは、CREATE
TABLESPACE
文およびALTER
TABLESPACE
文で同じです。「CREATE
TABLESPACE
」の「tablespace_retention_clause」を参照してください。
alter_tablespace_encryption
これらの句を使用すると、表領域を暗号化、復号化またはキー更新できます。
ONLINE
は、ALTER TABLESPACE ENCRYPTION
のデフォルトです。
ONLINE
-
表領域を暗号化するには、
ENCRYPT
を指定します。表領域は暗号化されていない必要があります。 -
暗号化されている表領域を異なる暗号化アルゴリズムを使用して暗号化するには、
REKEY
を指定します。表領域は、作成時に暗号化されているか、オンライン変換(ONLINE
ENCRYPT
)により暗号化されている必要があります。 -
表領域を復号化するには、
DECRYPT
を指定します。表領域は、作成時に暗号化されているか、オンライン変換(ONLINE
ENCRYPT
)により暗号化されている必要があります。
FINISH
オンライン変換操作が中断された場合は、FINISH
句を使用して操作を完了します。ENCRYPT
、DECRYPT
、REKEY
およびts_file_name_convert
句のセマンティクスは、ONLINE
句と同じです。
FINISH
を使用して、オンライン変換で表領域を暗号化、復号化またはキー更新できます。表領域は必ずオンラインにする。オンライン変換方法では、表領域内のデータファイルごとに新しいデータファイルが作成されます。このため、この句を使用する前に、ディスクの空き領域の量が、表領域で現在使用されているディスク領域の量以上であることを確認してください。
OFFLINE
この句を使用すると、オフライン変換により表領域を暗号化または復号化できます。表領域がオフラインになっているか、データベースがマウントされているが、オープンしていない必要があります。オフライン変換方法では、補助ディスク領域またはファイルは使用されません。既存のデータファイルが直接操作されます。このため、オフライン変換を実行する前に、表領域の全体バックアップを実行してください。
-
表領域を暗号化するには、
ENCRYPT
を指定します。AES128
、AES192
またはAES256
のアルゴリズムを使用して表領域を暗号化できます。表領域は暗号化されていない必要があります。 -
表領域を復号化するには、
DECRYPT
を指定します。表領域は、オフライン変換(OFFLINE
ENCRYPT
)により事前に暗号化されている必要があります。
オフライン変換操作が中断された場合は、オフライン変換コマンドを再発行して操作を完了できます。
tablespace_encryption_spec
この句を使用すると、表領域を暗号化またはキー更新する際に使用する暗号化アルゴリズムを指定できます。この句を省略した場合、データファイルはAES128
アルゴリズムを使用して暗号化されます。この句のセマンティクスの詳細は、CREATE
TABLESPACE
のドキュメントの「tablespace_encryption_spec」を参照してください。
ts_file_name_convert
この句を使用すると、オンライン変換中に作成される新しいデータファイルの名前がデータベースにより生成される方法を指定できます。
FILE_NAME_CONVERT
を省略すると、Oracleは補助ファイルの名前を内部的に選択し、後でその名前を元の名前に戻します。
-
filename_pattern
には、既存のデータファイル名にある文字列を指定します。 -
replacement_filename_pattern
には、置換文字列を指定します。新しいデータファイルに名前が付けられるとき、filename_pattern
がreplacement_filename_pattern
に置換されます。 -
表領域変換が終了した後に元のファイルを保持する場合は、
KEEP
を指定します。この句を省略した場合、変換が終了したときに元のファイルが削除されます。
alter_tablespace_encryption句の制限事項
一時表領域に対しては、オフライン変換およびオンライン変換は実行できません。
lost_write_protection
個々の表領域の消失書込み保護を有効化する前に、まずALTER DATABASE
を使用してデータベースでシャドウ消失書込み保護を有効化する必要があります。その後、CREATE TABLESPACE
コマンドを使用して、そのデータベースに少なくとも1つのシャドウ表領域を作成する必要があります。
これらのステップの後に、ALTER TABLESPACE
を使用して、シャドウ表領域で消失書込み保護を有効化、削除および一時停止できます。
例: 表領域に対する消失書込み保護の有効化
次のコマンドでは、tbsu1
表領域の消失書込み保護を有効にします。
ALTER TABLESPACE tbsu1 ENABLE LOST WRITE PROTECTION
例: シャドウ表領域の消失書込み保護の削除
次のコマンドでは、tbsu1
表領域の消失書込み保護を削除します。
ALTER TABLESPACE tbsu1 REMOVE LOST WRITE PROTECTION
例: シャドウ表領域の消失書込み保護の一時停止
次のコマンドでは、tbsu1
表領域の消失書込み保護を一時停止します。
ALTER TABLESPACE tbsu1 SUSPEND LOST WRITE PROTECTION
関連項目:
例
表領域のバックアップ: 例
次の文は、バックアップが間もなく開始されることをデータベースに通知します。
ALTER TABLESPACE tbs_01 BEGIN BACKUP;
次の文は、バックアップが終了したことをデータベースに通知します。
ALTER TABLESPACE tbs_01 END BACKUP;
表領域の移動および名前の変更: 例
次の例は、tbs_02
表領域(「表領域の自動拡張の有効化: 例」で作成)に関連付けられたデータファイルを、diskb:tbs_f5.dbf
からdiska:tbs_f5.dbf
に移動して、名前を変更します。
-
OFFLINE
句を指定したALTER
TABLESPACE
文を使用して、この表領域をオフラインにします。ALTER TABLESPACE tbs_02 OFFLINE NORMAL;
-
オペレーティング・システムのコマンドを使用して、このファイルを
diskb:tbs_f5.dbf
からdiska:tbs_f5.dbf
にコピーします。 -
RENAME
DATAFILE
句を指定したALTER
TABLESPACE
文を使用して、このデータファイルの名前を変更します。ALTER TABLESPACE tbs_02 RENAME DATAFILE 'diskb:tbs_f5.dbf' TO 'diska:tbs_f5.dbf';
-
ONLINE
句を指定したALTER
TABLESPACE
文を使用して、この表領域をオンラインに戻します。ALTER TABLESPACE tbs_02 ONLINE;
データファイルおよび一時ファイルの追加と削除: 例
次の文は、表領域にデータファイルを追加します。さらに多くの領域が必要な場合、10KBの新しいエクステントが最大100KBまで追加されます。
ALTER TABLESPACE tbs_03 ADD DATAFILE 'tbs_f04.dbf' SIZE 100K AUTOEXTEND ON NEXT 10K MAXSIZE 100K;
次の文は、空のデータファイルを削除します。
ALTER TABLESPACE tbs_03 DROP DATAFILE 'tbs_f04.dbf';
次の文は、「一時表領域の作成: 例」で作成された一時表領域に一時ファイルを追加し、その後、削除します。
ALTER TABLESPACE temp_demo ADD TEMPFILE 'temp05.dbf' SIZE 5 AUTOEXTEND ON; ALTER TABLESPACE temp_demo DROP TEMPFILE 'temp05.dbf';
一時表領域の領域の管理: 例
次の文は、「一時表領域の作成: 例」で作成した一時表領域の領域を、SHRINK
SPACE
句を使用して管理します。KEEP
句が省略されているので、表領域の大きさは、表領域の他の記憶域属性を満たしていることを条件として可能なかぎり縮小されます。
ALTER TABLESPACE temp_demo SHRINK SPACE;
Oracle Managed Filesのデータファイルの追加: 例
次の例では、Oracle Managed Filesのデータファイルをomf_ts1
表領域に追加します(この表領域の作成の詳細は、「Oracle Managed Filesの作成: 例」を参照)。新しいデータファイルは100MBで、最大サイズが制限なしで自動拡張されます。
ALTER TABLESPACE omf_ts1 ADD DATAFILE;
表領域のロギング属性の変更: 例
次の例では、表領域のデフォルトのロギング属性をNOLOGGING
に変更します。
ALTER TABLESPACE tbs_03 NOLOGGING;
表領域のロギング属性を変更した場合でも、その表領域内の既存のスキーマ・オブジェクトのロギング属性には影響しません。表レベル、索引レベルおよびパーティション・レベルでのロギング指定によって、表領域レベルのロギング属性を上書きできます。
UNDOデータの保持の変更: 例
次の文は、undots1
表領域のUNDOデータの保持を、通常のUNDOデータ動作に変更します。
ALTER TABLESPACE undots1 RETENTION NOGUARANTEE;
次の文は、undots1
表領域のUNDOデータの保持を、期限が切れていないUNDOデータを保持する動作に変更します。
ALTER TABLESPACE undots1 RETENTION GUARANTEE;