用途
CREATE
TABLESPACE
文を使用すると、表領域を作成できます。表領域とは、スキーマ・オブジェクトを格納する、データベース内に割り当てられた領域です。
永続表領域には、永続スキーマ・オブジェクトが格納されます。永続表領域のオブジェクトは、データファイルに格納されます。
UNDO表領域は、データベースを自動UNDO管理モードで実行している場合にOracle DatabaseがUNDOデータを管理するために使用する永続表領域です。UNDOには、ロールバック・セグメントではなく、自動UNDO管理モードを使用することをお薦めします。
一時表領域には、セッションの存続期間中のみ、スキーマ・オブジェクトが格納されます。一時表領域のオブジェクトは、一時ファイルに格納されます。
表領域は、最初は読み書き両用として作成されます。その後、ALTER
TABLESPACE
文でその表領域をオフラインまたはオンラインに設定したり、表領域にデータファイルや一時ファイルを追加したり、読取り専用に設定することができます。
DROP
TABLESPACE
文を使用して、データベースから表領域を削除することもできます。
関連項目:
|
前提条件
CREATE
TABLESPACE
システム権限が必要です。SYSAUX
表領域を作成する場合は、SYSDBA
システム権限が必要です。
表領域を作成する場合、表領域を格納するデータベースを作成する必要があります。また、そのデータベースをオープンしておく必要もあります。
SYSTEM
以外の表領域のオブジェクトを使用する場合は、次の注意事項があります。
自動UNDO管理モードでデータベースを実行するには、1つ以上のUNDO
表領域がオンラインである必要があります。
手動UNDO管理モードのデータベースを実行するには、SYSTEM
ロールバック・セグメント以外の1つ以上のロールバック・セグメントがオンラインである必要があります。
注意: データベースを自動UNDO管理モードで実行することをお薦めします。詳細は、『Oracle Database管理者ガイド』を参照してください。 |
構文
create_tablespace::=
(permanent_tablespace_clause::=、temporary_tablespace_clause::=、undo_tablespace_clause::=を参照)
permanent_tablespace_clause::=
注意: DEFAULT 句を指定する場合、table_compression またはstorage_clause 句のいずれかを指定する必要があります。 |
(file_specification::=、size_clause::=、logging_clause ::=、tablespace_encryption_spec::=、table_compression::=(「CREATE
TABLE
」の項)、storage_clause::=、extent_management_clause ::=、segment_management_clause ::=、flashback_mode_clause ::=を参照)
(size_clause::=を参照)
temporary_tablespace_clause::=
(file_specification::=、tablespace_group_clause、extent_management_clause ::=を参照)
(file_specification::=、extent_management_clause ::=、tablespace_retention_clause ::=を参照)
tablespace_retention_clause::=
セマンティクス
この句を使用すると、表領域がbigfileかsmallfileかを指定できます。この句は、データベースのデフォルトの表領域タイプの設定を上書きします。
bigfile表領域に格納されるのは、1つのデータファイルまたは一時ファイルのみであり、このファイルには最大約40億(232)ブロックを格納できます。データファイルまたは一時ファイル1つ当たりの最大サイズは、32Kブロックまたは8Kブロックの表領域の場合は256キロバイト(KB)です。データファイルまたは一時ファイル1つ当たりの最大サイズは、32Kブロックの表領域の場合は128TB、8Kブロックの表領域の場合は32TBです。
smallfile表領域は、Oracleの従来の表領域であり、1022のデータファイルまたは一時ファイルを含めることができます。それぞれのファイルは、最大で約400万(222)のブロックを格納できます。
この句を省略した場合、データベースに設定された永続表領域または一時表領域の、現在のデフォルト表領域タイプが使用されます。永続表領域にBIGFILE
を指定すると、デフォルトで、自動セグメント領域管理のローカル管理表領域が作成されます。
bigfile表領域の制限事項 DATAFILE
句に1つのみのデータファイルを指定するか、またはTEMPFILE
句に1つのみの一時ファイルを指定できます。
permanent_tablespace_clause
次の句を使用すると、永続表領域を作成できます。(これらの句の一部は、一時表領域またはUNDO表領域の作成にも使用されます。)
tablespace
作成する表領域の名前を指定します。名前は、「データベース・オブジェクトのネーミング規則」に指定されている要件を満たしている必要があります。
SYSAUX表領域の注意事項 SYSAUX
は、必須の予備システム表領域です。Oracle Database 11gより前のリリースからアップグレードする場合は、CREATE
TABLESPACE
文を使用してSYSAUX
表領域を作成する必要があります。この句を指定するには、SYSDBA
システム権限が必要となり、また、データベースをUPGRADE
モードでオープンしておく必要があります。
SYSAUX
表領域には、EXTENT
MANAGEMENT
LOCAL
およびSEGMENT
SPACE
MANAGEMENT
AUTO
を指定する必要があります。DATAFILE
句は、Oracle Managed Filesが使用可能になっている場合のみのオプションです。DATAFILE句の動作については、「DATAFILE | TEMPFILE句」
を参照してください。
SYSAUX
表領域には十分な領域を割り当ててください。この表領域の作成のガイドラインは、『Oracle Databaseアップグレード・ガイド』を参照してください。
SYSAUX表領域の制限事項: SYSAUX
表領域にOFFLINE
またはTEMPORARY
を指定することはできません。
永続表領域を構成するデータファイルを指定するか、または一時表領域を構成する一時ファイルを指定します。オペレーティング・システムのファイル・システム内の標準データファイルと一時ファイル、またはOracle Automatic Storage Management (Oracle ASM)ディスク・グループのファイルを作成するには、file_specification
のdatafile_tempfile_spec
書式を使用します。
DB_CREATE_FILE_DEST
初期化パラメータに値を設定してOracle Managed Filesを使用可能にしていないかぎり、DATAFILE
またはTEMPFILE
句を指定する必要があります。Oracle ASMディスク・グループ・ファイルの場合、このパラメータをOracle ASMファイル名の複数ファイル作成形式に設定する必要があります。このパラメータが設定されている場合、パラメータで指定したデフォルトのファイルの出力先に、100MBのファイルがシステム名で作成されます。このファイルではAUTOEXTEND
が有効になっているため、最大サイズの制限はありません。
注意: メディア・リカバリは一時ファイルを認識しません。 |
関連項目:
|
データファイルおよび一時ファイルの指定の注意事項:
RAWデバイスをサポートするオペレーティング・システムでRAWデバイスをデータファイルとして指定する場合、datafile_tempfile_spec
にREUSE
キーワードを指定しても意味がありません。このようなCREATE
TABLESPACE
文は、REUSE
の指定の有無にかかわらず実行されます。
datafile_tempfile_spec
でディスク・グループ名のみを指定すると、Oracle ASMディスク・グループ内に表領域を作成できます。この場合、Oracle ASMにより指定したディスク・グループにデータファイルが作成され、システム生成のファイル名が付けられます。データファイルは無制限に自動拡張可能です。デフォルト・サイズは100MBです。autoextend_clause
を使用すると、デフォルト・サイズを上書きできます。
既存のファイルを参照するASM_filename
の参照形式の1つを使用する場合、REUSE
も指定する必要があります。
注意: オペレーティング・システムによっては、一時ファイルのブロックが実際にアクセスされるまで、一時ファイル用の領域が割り当てられない場合があります。領域の割当ての遅延のため、一時ファイルの作成およびサイズ変更が速くなります。ただし、後で一時ファイルが使用されるときに、十分なディスク領域を使用可能にする必要があります。問題を回避するには、一時ファイルの作成またはサイズ変更の前に、ディスクの空き領域が、新しく作成する一時ファイルまたはサイズ変更後の一時ファイルのサイズよりも大きいことを確認してください。ディスク領域に余裕を持たせておくと、関連のない操作による、予期されるディスク使用量の増加にも対応できます。その後で、作成またはサイズ変更操作を実行してください。 |
関連項目:
|
この句は、ディクショナリ管理表領域にのみ有効です。表領域で使用されるエクステントの最小サイズを指定します。この句を指定すると、表領域内のすべての使用済エクステントまたは未使用エクステントのサイズが、size_clause
で指定された値以上であること、およびその倍数であることが保証され、表領域における空き領域の断片化を制御できます。
関連項目: この句の詳細は、「size_clause」を参照してください。MINIMUM EXTENTを使用した断片化の制御については、 『Oracle Database VLDBおよびパーティショニング・ガイド』 を参照してください。 |
表領域の非標準ブロック・サイズを指定するには、BLOCKSIZE
句を使用します。この句を指定するには、DB_CACHE_SIZE
と少なくとも1つのDB_
n
K_CACHE_SIZE
パラメータを設定する必要があります。また、この句で指定する整数は、DB_
n
K_CACHE_SIZE
パラメータの1つの設定と対応している必要があります。
BLOCKSIZEの制限事項: 一時表領域の場合、または表領域を一時表領域として任意のユーザーに割り当てる場合は、標準以外のブロック・サイズを指定できません。
注意: パフォーマンスが低下する可能性があるため、セクター・サイズが4Kのディスクにはブロック・サイズが2Kの表領域を格納しないことをお薦めします。 |
関連項目: DB_n
K_CACHE_SIZEパラメータの詳細は、 『Oracle Databaseリファレンス』 を参照してください。マルチ・ブロック・サイズの詳細は、『Oracle Database概要』を参照してください。 |
表領域内のすべての表、索引、マテリアライズド・ビュー、マテリアライズド・ビュー・ログおよびパーティションのデフォルトのロギング属性を指定します。デフォルトはLOGGING
です。この句は、一時表領域またはUNDO表領域では無効です。
表レベル、索引レベル、マテリアライズド・ビュー・レベル、マテリアライズド・ビュー・ログ・レベル、パーティション・レベルでのロギングを指定することで、表領域レベルのロギング属性を上書きできます。
この句を使用すると、表領域はFORCE
LOGGING
モードになります。一時セグメントへの変更を除き、表領域内のすべてのオブジェクトに対するすべての変更が記録され、個々のオブジェクトのNOLOGGING
設定が上書きされます。データベースをオープンし、READ
WRITE
モードにしておく必要があります。
この設定によって、NOLOGGING
属性が削除されることはありません。FORCE
LOGGING
とNOLOGGING
の両方を指定できます。この場合、後から表領域に作成されるオブジェクトのデフォルト・ロギング・モードはNOLOGGING
になりますが、表領域またはデータベースがFORCE
LOGGING
モードの場合、このデフォルト値は無視されます。この表領域でFORCE
LOGGING
モードを無効にすると、デフォルト値であるNOLOGGING
が再度適用されます。
注意: FORCE LOGGING モードは、パフォーマンスに影響する場合があります。この設定を使用する状況の詳細は、『Oracle Database管理者ガイド』を参照してください。 |
強制ロギングの制限事項: FORCE
LOGGING
は、UNDO表領域および一時表領域に対して指定できません。
この句を使用すると、表領域の暗号化プロパティを指定できます。実際は、この句によって表領域が暗号化されるわけではありません。表領域を暗号化するには、この文のDEFAULT
storage_clause
の一部としてENCRYPT
キーワードも指定する必要があります。また、ALTER
SYSTEM
SET
ENCRYPTION
WALLET
OPEN
IDENTIFIED
BY
...を使用して、インスタンスの期間中にTDEマスター鍵をデータベース・メモリーにすでにロードしているか、またはHSMへの接続を確立して、暗号化された表と表領域のキーをHSMに送信し、それらを復号化したものを受け取っている必要があります。詳細は、「SET ENCRYPTION WALLET句」を参照してください。
注意: 暗号化を使用して作成された表領域は復号化できません。暗号化されていない表領域を作成し、暗号化されていない表領域にデータベース・オブジェクトを再作成する必要があります。 |
tablespace_encryption_spec: USING
'encrypt_algorithm
'を指定して、使用する暗号化アルゴリズムの名前を示します。有効なアルゴリズムは、AES256
、AES192
、AES128
および3DES168
です。この句を省略すると、AES128
が使用されます。
DEFAULT
句を使用すると、表領域のデフォルト・パラメータを指定できます。
table_compression table_compression
句を使用して、表領域で作成されるすべての表のデフォルトのデータ圧縮を指定します。この句は、一時表領域では無効です。この句のセマンティクスの詳細は、「CREATE TABLE」の句「table_compression
」
を参照してください。
storage_clause storage_clause
を使用して、表領域で作成されるすべてのオブジェクトの記憶域パラメータを指定します。この句は、一時表領域またはローカル管理の表領域に対しては無効です。ディクショナリ管理表領域の場合、この句ではCOMPRESS
、INITIAL
、NEXT
、MINEXTENTS
、MAXEXTENTS
およびPCTINCREASE
記憶域パラメータを指定できます。詳細は、「storage_clause」を参照してください。
ONLINE | OFFLINE句
この句を使用すると、表領域がオンラインまたはオフラインのいずれであるかを決定できます。この句は、一時表領域では無効です。
ONLINE ONLINE
を指定すると、表領域に対するアクセス権限を付与されているユーザーに対して、作成直後の表領域を使用可能にできます。これはデフォルトです。
OFFLINE OFFLINE
を指定すると、作成直後の表領域を使用禁止にできます。
データ・ディクショナリ・ビューDBA_TABLESPACES
は、各表領域がオンラインまたはオフラインのいずれであるかを示します。
extent_management_clause
を使用すると、表領域のエクステントの管理方法を指定できます。
注意: この句でエクステントの管理を指定した後は、表領域を移行しないかぎり、エクステントの管理を変更できません。 |
AUTOALLOCATE
を指定すると、表領域がシステム管理されます。ユーザーはエクステント・サイズを指定できません。AUTOALLOCATE
は、一時表領域に対して指定できません。
UNIFORM
を指定すると、表領域をSIZE
バイトの均一のエクステントで管理できます。SIZE
のデフォルト値は1MBです。一時表領域のすべてのエクステントはサイズが均一であるため、このキーワードは一時表領域ではオプションです。ただし、SIZE
を指定する場合は、UNIFORM
を指定する必要があります。UNDO表領域にUNIFORM
を指定することはできません。
AUTOALLOCATE
またはUNIFORM
を指定しない場合のデフォルトは、一時表領域ではUNIFORM
、他のすべてのタイプの表領域ではAUTOALLOCATE
です。
extent_management_clause
を指定しない場合、MINIMUM
EXTENT
句およびDEFAULT
storage_clause
が解析され、エクステント管理が判断されます。
関連項目: ローカル管理表領域については、『Oracle Database概要』を参照してください。 |
エクステント管理の制限事項: エクステント管理には、次の制限事項があります。
永続的なローカル管理表領域には、永続オブジェクトのみを格納できます。ローカル管理表領域に一時オブジェクトを格納する必要がある場合(たとえば、ユーザーの一時表領域に割り当てる場合)は、temporary_tablespace_clause
を使用します。
この句を指定する場合、DEFAULT
storage_clause
、MINIMUM
EXTENT
またはtemporary_tablespace_clause
は指定できません。
segment_management_clause
は、永続的なローカル管理表領域に対してのみ有効です。Oracle Databaseが、空きリストまたはビットマップのどちらを使用して、表領域のセグメントにある使用済領域および空き領域を追跡するかを指定できます。この句は、一時表領域では無効です。
AUTO AUTO
を指定すると、ビットマップを使用して表領域のセグメントにある空き領域を管理できます。AUTO
を指定すると、この表領域のオブジェクトに対して後で指定する記憶域のPCTUSED
、FREELIST
およびFREELIST
GROUPS
の値は無視されます。この設定を自動セグメント領域管理といい、これがデフォルトです。
MANUAL MANUAL
を指定すると、空きリストを使用して表領域のセグメントにある空き領域を管理できます。この設定は使用しないようにして、自動セグメント領域の表領域を作成することを強くお薦めします。
既存の表領域のセグメント管理を確認するには、DBA_TABLESPACES
またはUSER_TABLESPACES
データ・ディクショナリ・ビューのSEGMENT_SPACE_MANAGEMENT
列を問い合せます。
注意: AUTO セグメント管理を指定する場合、次のことに注意します。
|
自動セグメント領域管理の制限事項 この句には、次の制限事項があります。
この句は、永続的なローカル管理表領域に対してのみ指定できます。
この句は、SYSTEM
表領域に対して指定できません。
関連項目:
|
この句をALTER
DATABASE
FLASHBACK
句と組み合せて使用すると、FLASHBACK
DATABASE
操作に表領域を使用できるかどうかを指定できます。この句は、データベースがFLASHBACK
モードでオープンされているときに、この表領域のフラッシュバック・ログ・データを保持しない場合に便利です。
この句は、一時表領域またはUNDO表領域では無効です。
FLASHBACK ON FLASHBACK
ON
を指定すると、表領域でFLASHBACK
モードを有効にできます。この表領域のフラッシュバック・ログ・データが保存され、FLASHBACK
DATABASE
操作でこの表領域を使用できるようになります。flashback_mode_clause
を指定しない場合、デフォルトでFLASHBACK
ON
が指定されます。
FLASHBACK OFF FLASHBACK
OFF
を指定すると、表領域でFLASHBACK
モードを無効にできます。この表領域のフラッシュバック・ログ・データは保存されません。FLASHBACK
DATABASE
操作の実行前に、この表領域のデータファイルをオフラインにするか、または削除する必要があります。または、表領域全体をオフラインにすることもできます。どちらの場合も、既存のフラッシュバック・ログは削除されません。
注意: 表領域のFLASHBACK モードは、個々の表のFLASHBACK モードに依存しません。 |
関連項目:
|
この句を使用すると、ローカル管理一時表領域を作成できます。一時表領域は、セッションの存続期間中にのみ保持される一時データを格納できるデータベース内の領域割当てです。プロセスまたはインスタンスに障害が発生した場合、この一時データをリカバリすることはできません。
一時データとは、一時表などのユーザー生成スキーマ・オブジェクト、またはハッシュ結合およびソート操作で使用される一時領域などのシステム生成データです。一時表領域、またはこの表領域が含まれる表領域グループを特定のユーザーに割り当てると、このユーザーによって開始されるトランザクションでのソート操作にこの表領域が使用されます。
TEMPFILE
句の詳細は、「DATAFILE | TEMPFILE句」を参照してください。extent_management_clause
の詳細は、「extent_management_clause」を参照してください。
関連項目: ユーザーに対する一時表領域の割当ての詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。 |
tablespace_group_clause
この句は、一時表領域に対してのみ有効です。この句を使用すると、tablespace
が表領域グループに含まれるかどうかを決定できます。表領域グループを使用すると、複数の一時表領域を1人のユーザーに割り当て、一時表領域のアクセス性を向上できます。
グループ名を指定すると、tablespace
がその表領域グループのメンバーであることを示すことができます。グループ名にtablespace
または他の既存の表領域と同じ名前を指定することはできません。表領域グループがすでに存在する場合、そのグループに新しい表領域が追加されます。表領域グループが存在しない場合、グループが作成され、そのグループに新しい表領域が追加されます。
空の文字列(' ')を指定すると、tablespace
がいずれの表領域グループにも属さないことを示すことができます。
関連項目:
|
一時表領域の制限事項: 一時表領域に格納されたデータは、セッションの存続期間中のみ保持されます。そのため、CREATE
TABLESPACE
句のサブセットのみが一時表領域に対して有効です。一時表領域に対して指定できるのは、TEMPFILE
句、tablespace_group_clause
およびextent_management_clause
のみです。
UNDO
を指定すると、UNDO表領域を作成できます。自動UNDO管理モードでデータベースを実行する場合、Oracle Databaseは、ロールバック・セグメントのかわりにUNDO表領域を使用してUNDO領域を管理します。この句は、自動UNDO管理モードで作成しなかったデータベースを自動UNDO管理モードで実行している場合に便利です。
自動UNDO管理モードでデータベースを起動すると、UNDO表領域が割り当てられます。UNDO表領域がインスタンスに割り当てられない場合、SYSTEM
ロールバック・セグメントが使用されます。UNDO表領域の作成によってこれを回避することができ、他のUNDO表領域がその時点で割り当てられていない場合、インスタンスに暗黙的に割り当てられます。
DATAFILE
句の詳細は、「DATAFILE | TEMPFILE句」を参照してください。
extent_management_clause
UNDO表領域を作成するときにはextent_management_clause
を指定する必要はありません。これは、UNDO表領域が、AUTOALLOCATE
エクステント管理を使用するローカル管理表領域である必要があるためです。この句を指定する場合は、EXTENT
MANAGEMENT
LOCAL
またはEXTENT
MANAGEMENT
LOCAL
AUTOALLOCATE
を指定する必要があります。どちらも、この句を省略した場合と同じ結果になります。この句のセマンティクスの詳細は、「extent_management_clause」を参照してください。
この句は、UNDO表領域に対してのみ有効です。
RETENTION
GUARANTEE
を指定すると、tablespace
のすべてのUNDOセグメントの期限切れ前のUNDOデータが、これらのセグメントのUNDO領域を必要とする実行中の操作が失敗する場合でも保持されます。この設定は、Oracleフラッシュバック問合せまたはOracleフラッシュバック・トランザクション問合せを発行し、データの問題を診断および修正する必要がある場合に便利です。
RETENTION
NOGUARANTEE
を指定すると、UNDO動作を通常の動作に戻すことができます。実行中のトランザクションで必要な場合には、期限切れ前のUNDOデータによって使用されているUNDOセグメントの領域を使用できます。これはデフォルトです。
UNDO表領域の制限事項: UNDO表領域には、次の制限事項があります。
この表領域にはデータベース・オブジェクトを作成できません。システム管理のUNDOデータ用に確保されています。
ローカルのAUTOALLOCATE
エクステント管理を指定するためにUNDO表領域に対して指定できるのは、DATAFILE句および
extent_management_clause句のみです。
extent_management_clause
を使用した、ローカルのUNIFORM
エクステント管理またはディクショナリ・エクステント管理の指定はいずれもできません。すべてのUNDO表領域は、永続的、読取り/書込み可能およびロギング・モードで作成されます。MINIMUM
EXTENT
およびDEFAULT
STORAGE
に対する値は、システムで生成されます。
関連項目:
|
例
これらの例では、8Kブロックを使用していると想定します。
bigfile表領域の作成例: 次の例は、20MBのデータファイルbigtbs_f1.dbf
を持つbigfile表領域bigtbs_01
を作成します。
CREATE BIGFILE TABLESPACE bigtbs_01 DATAFILE 'bigtbs_f1.dbf' SIZE 20M AUTOEXTEND ON;
UNDO表領域の作成例: 次の例は、10MBのUNDO表領域undots1
を作成します。
CREATE UNDO TABLESPACE undots1 DATAFILE 'undotbs_1a.dbf' SIZE 10M AUTOEXTEND ON RETENTION GUARANTEE;
一時表領域の作成例: 次の文は、サンプル・データベースのデータベース・ユーザーに対するデフォルトの一時表領域を作成します。
CREATE TEMPORARY TABLESPACE temp_demo TEMPFILE 'temp01.dbf' SIZE 5M AUTOEXTEND ON;
デフォルトのデータベース・ブロック・サイズを2KBとした場合、マップの各ビットは1つのエクステントを表し、各ビットは2,500ブロックをマップします。
次の例は、データファイルを作成するデフォルトの位置を設定し、デフォルトの位置にOracle Managed Filesの一時ファイルを持つ表領域を作成します。一時ファイルは100MBで、最大サイズが制限なしで自動拡張されます。これらは、Oracle Managed Filesのデフォルト値です。
ALTER SYSTEM SET DB_CREATE_FILE_DEST = '$ORACLE_HOME/rdbms/dbs'; CREATE TEMPORARY TABLESPACE tbs_05;
表領域グループへの一時表領域の追加例: 次の文は、tbs_grp_01
表領域グループに含まれるtbs_temp_02
一時表領域を作成します。この表領域グループが存在しない場合、文の実行中に作成されます。
CREATE TEMPORARY TABLESPACE tbs_temp_02 TEMPFILE 'temp02.dbf' SIZE 5M AUTOEXTEND ON TABLESPACE GROUP tbs_grp_01;
基本的な一時表領域の作成例: 次の文は、1つのデータファイルを持つ表領域tbs_01
を作成します。
CREATE TABLESPACE tbs_01 DATAFILE 'tbs_f2.dbf' SIZE 40M ONLINE;
次の文は、1つのデータファイルを持つ表領域tbs_03
を作成し、すべてのエクステントを500KBの倍数として割り当てます。
CREATE TABLESPACE tbs_03 DATAFILE 'tbs_f03.dbf' SIZE 20M LOGGING;
表領域の自動拡張を使用可能にする場合の例: 次の文は、1つのデータファイルを持つ表領域tbs_02
を作成します。さらに領域が必要な場合、500KBのエクステントが最大サイズ100MBまで追加されます。
CREATE TABLESPACE tbs_02 DATAFILE 'diskb:tbs_f5.dbf' SIZE 500K REUSE AUTOEXTEND ON NEXT 500K MAXSIZE 100M;
ローカル管理表領域の作成例: 次の文では、データベース・ブロック・サイズが2KBであると仮定します。
CREATE TABLESPACE tbs_04 DATAFILE 'file_1.dbf' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
この文で、すべてのエクステントが128KBで、ビットマップの各ビットが64ブロックを示す、ローカル管理表領域を作成します。
次の文は、均一のエクステントを持つローカル管理表領域を作成して、その表領域に格納された表の例を示します。
CREATE TABLESPACE lmt1 DATAFILE 'lmt_file2.dbf' SIZE 100m REUSE EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M; CREATE TABLE lmt_table1 (col1 NUMBER, col2 VARCHAR2(20)) TABLESPACE lmt1 STORAGE (INITIAL 2m);
表の初期セグメント・サイズは2MBです。
次の例は、均一のエクステントを持たないローカル管理表領域を作成します。
CREATE TABLESPACE lmt2 DATAFILE 'lmt_file3.dbf' SIZE 100m REUSE EXTENT MANAGEMENT LOCAL; CREATE TABLE lmt_table2 (col1 NUMBER, col2 VARCHAR2(20)) TABLESPACE lmt2 STORAGE (INITIAL 2m MAXSIZE 100m);
表の初期セグメント・サイズは2MBです。Oracle Databaseによって、初期セグメント・サイズを満たすように各エクステントのサイズおよび割り当てられるエクステントの合計数が決定されます。セグメントの最大サイズは、100MBに制限されています。
暗号化された表領域の作成例: 次の例の最初の文は、ウォレットを開くことによって、データベースに対して暗号化を使用可能にします。2番目の文は、暗号化された表領域を作成します。
ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "wallet_password
";
CREATE TABLESPACE encrypt_ts
DATAFILE '$ORACLE_HOME/dbs/encrypt_df.dbf' SIZE 1M
ENCRYPTION USING 'AES256'
DEFAULT STORAGE (ENCRYPT);
表領域に対してセグメント領域管理を指定する場合の例: 次の例では、自動セグメント領域管理の表領域を作成します。
CREATE TABLESPACE auto_seg_ts DATAFILE 'file_2.dbf' SIZE 1M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
Oracle Managed Filesの作成例: 次の例は、データファイルを作成するデフォルトの位置を設定し、デフォルトの位置にデータファイルを持つ表領域を作成します。データファイルは100MBで自動拡張可能であり、最大サイズの制限がありません。
ALTER SYSTEM SET DB_CREATE_FILE_DEST = '$ORACLE_HOME/rdbms/dbs'; CREATE TABLESPACE omf_ts1;
次の例は、自動拡張されない100MBのOracle Managed Filesのデータファイルを持つ表領域を作成します。
CREATE TABLESPACE omf_ts2 DATAFILE AUTOEXTEND OFF;