目次
新しい表領域を作成する2つの方法
ORACLEで新しい表領域を作成する方法は2種類あります。EM EXPRESSを使った方法。SQL文を使用した方法。
EM EXPRESSによる表領域の新規作成
EM EXPRESSを使用して表領域を新規作成するには以下の手順を実行する。
1 EM EXPRESSのMemory メニューのTablespaceをクリックする。
2 Memoryページが表示される。現在データベースにある表領域がリストされる。
3 ActionメニューのCreateをクリックする。
4 表領域の作成ウィンドウが表示される。
5 データファイルフィールドにファイル名を入力して+ボタンをクリックする。ファイル・サイズや自動拡張の指定などを確認して「>」ボタンをクリックする。
6 ブロックサイズとエクステント割り当てを確認して>ボタンをクリックする。
7 ロギングを確認して「>」ボタンをクリックする。
8 セグメント領域管理と圧縮を確認して「>」ボタンをクリックする。
9 確認画面で「OK」ボタンをクリックする。
10 新しい表領域が作成される。
SQL文を使用した表領域の新規作成
SQL文を使用して表領域を作成するには、CREATE TABLESPACE文を使用する。文内でデータファイルサイズとファイルのパスを指定する。データベースは指定された通りにデータファイルを割り当ててフォーマットする。
表領域を作成する際のオプション
表領域を作成する際に指定できるオプションは 「EXTENT MANAGEMENT LOCAL」「SEGMENT SPACE MANAGEMENT」の二種類に大きく分けられる。
EXTENT MANAGEMENT LOCAL
EXTENT MANAGEMENT LOCALはローカル管理表領域の指定です。ローカル管理表領域では、その表領域では、その表領域内の全ての「エクステント割り当て情報」が、ファイルのヘッダーに格納されているビットマップを使用して追跡されている為、エクステントの割り当て及び解除のパフォーマンスが向上する。
AUTOALLOCATE
データベースが自動的にエクステントの割り当てを管理する。最小エクステントサイズは64KB。デフォルト値。
1 2 3 4 5 |
CREATE TABLESPACE test2 DATAFILE 'C:\ORACLE\ORADATA\ORA12C\test2.dbf' size 50M EXTENT MANAGEMENT LOCAL AUTOALLOCATE; |
UNIFORM SIZEサイズ
エクステントが<サイズ>に指定したサイズで均一に管理される。サイズを指定しない場合のデフォルトは1MB
1 2 3 4 5 |
CREATE TABLESPACE test3 DATAFILE 'C:\ORACLE\ORADATA\ORA12C\test3.dbf' size 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M; |
SEGMENT SPACE MANAGEMENT
セグメント領域の管理方法の指定である。ローカル管理表領域のセグメント領域の管理方法には「自動」と「手動」の二種類がある。
AUTO 自動セグメント領域管理(ASSM)。デフォルト値。セグメント内の空き領域をビットマップで管理する。
MANUAL 手動セグメント領域管理。セグメント内の空き領域を空きリストで管理する。
表領域の作成
1 2 3 4 5 |
CREATE TABLESPACE test4 DATAFILE 'C:\ORACLE\ORADATA\ORA12C\test4.dbf' size 50M SEGMENT SPACE MANAGEMENT AUTO; |
OMFを使用した表領域の新規作成
OMF(Oracle Managed Files)の機能を使用すると、Oracledata baseを構成するOSファイルを、データベース管理者が直接管理する必要がなくなる。
OMFを使用する場合はDB_CREATE_FILE_DEST初期化パラメータでファイルの作成場所を定義する。データベースはそのディレクトリにファイルを自動的に作成し、管理する。ファイル名はデータベースが自動設定する。
ファイルの作成場所の指定
例文
1 |
ALTER SYSTEM SET DB_CREATE_FILE_DEST='ディレクトリ名'; |
表領域の作成
1 2 3 4 5 |
CREATE TABLESPACE 表領域名; ALTER SYSTEM SET DB_CREATE_FILE_DEST = 'C:\ORACLE\ORADATA\ORA12C'; CREATE TABLESPACE test5; |