149 DBMS_SPACE_ADMIN
DBMS_SPACE_ADMIN
パッケージは、ローカルに管理される表領域に対する機能を提供します。
この章のトピックは、次のとおりです:
参照:
DBMS_SPACE_ADMIN
の使用方法の例および説明の詳細は、『Oracle Database管理者ガイド』を参照してください。
149.2 DBMS_SPACE_ADMINの定数
DBMS_SPACE_ADMIN
パッケージは、パラメータ値の指定に使用できる定数を提供します。
表149-1 DBMS_SPACE_ADMINの定数
定数 | タイプ | 値 | 説明 |
---|---|---|---|
|
|
|
セグメントが所有する領域の使用状況がビットマップに適切に反映されていることを検証します。 |
|
|
|
セグメントが所有する領域の使用状況がビットマップに適切に反映されており、この領域が他のセグメントから要求されていないことを検証します。 |
|
|
|
一時セグメントを破損としてマークします。これにより、ディクショナリからの排除が容易になります(領域の再利用なし)。 |
|
|
|
破損した一時セグメントを有効としてマークします。これは、セグメントのエクステント・マップまたは他の場所での破損が解決され、セグメントを正常に削除できる場合に役立ちます。 |
|
|
|
指定のセグメントのエクステント・マップをダンプします。 |
|
|
|
表領域のビットマップを、その表領域内のセグメントのエクステント・マップを使用して検証し、すべて一致していることを検証します。 |
|
|
|
ブロック範囲(エクステント)を、ビットマップ上で空き領域としてマークします。 |
|
|
|
ブロック範囲(エクステント)を、ビットマップ上で使用領域としてマークします。 |
|
|
|
メタデータの基本的なチェックを実行します。 |
|
|
|
詳細な検証を実行します。 |
|
|
|
セグメントに対して特定のチェックを実行します。 |
|
|
|
最高水位標(HWM)をチェックします。 |
|
|
|
L1 BMB、L2 BMBおよびL3 BMB(ビットマップ・ブロック)間の整合性をチェックします。 |
|
|
|
セグメント・ヘッダーと、対応する |
|
|
|
エクステント・マップに対応する表領域ビットマップが使用領域としてマークされているかどうかをチェックします。 |
|
|
|
L1 BMB、L2 BMB、L3 BMBおよびデータ・ブロックが同一の親セグメントを指しているかをチェックします。 |
|
|
|
ビットマップ・ブロックとエクステント・マップ間に一貫性があるかどうかをチェックします。 |
|
|
|
ブロックを示すビットマップの状態に一貫性があるかどうかをデータ・ブロックからチェックします。 |
|
|
|
表領域ビットマップとその表領域に属するエクステントに一貫性があるかどうかをチェックします。 |
|
|
|
|
|
|
|
表領域内のすべてのセグメントに対して |
|
|
|
ビットマップ・ブロックの要約のみをダンプします。 |
149.3 DBMS_SPACE_ADMINの操作上のノート
SYSTEM
表領域を移行する前に、特定の条件を満たす必要があります。これらの条件は、コールド・バックアップを除くTABLESPACE_MIGRATE_TO_LOCAL
プロシージャによって施行されます。
-
データベースに、
SYSTEM
でないデフォルトの一時表領域があること。 -
ディクショナリ管理表領域には、ロールバック・セグメントを保持できないこと。
-
ローカル管理表領域には、最低1つのオンライン・ロールバック・セグメントがあること。自動UNDO管理を使用している場合は、UNDO表領域がオンラインであること。
-
ロールバック・セグメントまたはUNDO表領域を含む表領域を除くすべての表領域が、読取り専用であること。
-
データベースのコールド・バックアップがあること。
-
システムが制限モードであること。
149.4 DBMS_SPACE_ADMINサブプログラムの要約
この表は、DBMS_SPACE_ADMIN
サブプログラムを示し、簡単に説明しています。
表149-2 DBMS_SPACE_ADMINパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
ASSM(自動セグメント領域管理)表領域に作成されたセグメントを検証します。 |
|
ASSM表領域を検証します。 |
|
空の表(または表の一部)とその依存オブジェクトからセグメントを削除します。 |
|
|
|
遅延セグメント作成が設定された表(および表の一部)とその依存オブジェクトに対してセグメントを実体化します。 |
|
セグメントを破損または有効としてマークし、適切なエラーのリカバリを可能にします。 |
|
現在破損としてマークされているセグメントを削除します(領域の再生なし)。 |
|
指定セグメントのセグメント・ヘッダーとエクステント・マップをダンプします。 |
|
セグメントのエクステント・マップの一貫性を検証します。 |
|
|
|
適切なブロック範囲(エクステント)を、ビットマップ上で空き領域または使用領域としてマークします。 |
|
移行が異常終了した表領域内のセグメントの状態を修正します。 |
|
ローカル管理表領域を、ディクショナリ管理表領域に移行します。 |
|
表領域を、ディクショナリ管理形式からローカル管理形式に移行します。 |
|
適切なビットマップを再作成します。 |
|
指定の表領域について割当て制限を再作成します。 |
|
指定先にビットマップを再配置します。 |
|
表領域内のセグメントについて、ビットマップとエクステント・マップが同期していることを検証します。 |
149.4.1 ASSM_SEGMENT_VERIFYプロシージャ
このプロシージャは、セグメントを指定すると、その領域のメタデータ・ブロックの基本的な一貫性、および領域メタデータとセグメント・データ・ブロックの間の一貫性を検証します。このプロシージャは、自動セグメント領域管理(ASSM)表領域に作成されたセグメントを検証します。
ただし、基本的な検証と詳細な検証の間には次の違いがあります。
-
基本的な検証には、領域メタデータの一貫性チェックが含まれます。たとえば、レベル1、レベル2、レベル3のビットマップ・ブロック間の整合性、セグメントのエクステント・マップとレベル1のビットマップ範囲との一貫性などがチェックされます。
-
詳細な検証には、データ・ブロックと領域メタデータ・ブロック間の一貫性チェックが含まれます。たとえば、レベル1の親ビットマップ・ブロックをデータ・ブロックが正しく指しているかどうか、およびデータ・ブロックの空き状態とそのデータ・ブロックに対応するレベル1ビットマップ・ブロックのビットの空き状態に一貫性があるかどうかなどがチェックされます。
構文
DBMS_SPACE_ADMIN.ASSM_SEGMENT_VERIFY ( segment_owner IN VARCHAR2, segment_name IN VARCHAR2, segment_type IN VARCHAR2, partition_name IN VARCHAR2, verify_option IN POSITIVE DEFAULT SEGMENT_VERIFY_BASIC, attrib IN POSITIVE DEFAULT NULL);
パラメータ
表149-3 ASSM_SEGMENT_VERIFYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントを所有するスキーマ。 |
|
検証するセグメントの名前。 |
|
セグメントのネームスペースは、 |
|
パーティションまたはサブパーティションの名前。 |
|
次のオプションのいずれかです。
|
|
|
使用上のノート
-
このプロシージャを使用するには、
SYSDBA
権限が必要です。 -
相対ファイル番号およびヘッダー・ブロック番号(
header_relative_file
パラメータおよびheader_block
パラメータ)は、DBA_SEGMENTS
を問い合せて決定します。 -
このプロシージャは、
sid_ora_
process_ID
.trc
という名前のダンプ・ファイルを、USER_DUMP_DEST
初期化パラメータで指定した場所に出力します。
149.4.2 ASSM_TABLESPACE_VERIFYプロシージャ
このプロシージャは、ASSM表領域に作成されたすべてのセグメントを検証します。セグメントごとの検証では、その領域のメタデータ・ブロックの基本的な一貫性チェック、および領域メタデータとセグメント・データ・ブロックの間の一貫性チェックが実行されます。
構文
DBMS_SPACE_ADMIN.ASSM_TABLESPACE_VERIFY ( tablespace_name IN VARCHAR2, ts_option IN POSITIVE, segment_option IN POSITIVE DEFAULT NULL);
パラメータ
表149-4 ASSM_TABLESPACE_VERIFYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
検証する表領域の名前。この表領域はASSM表領域である必要があります。 |
|
|
|
|
使用上のノート
-
このプロシージャを使用するには、
SYSDBA
権限が必要です。 -
このプロシージャは、
sid_ora_
process_ID
.trc
という名前のダンプ・ファイルを、USER_DUMP_DEST
初期化パラメータで指定した場所に出力します。
149.4.3 DROP_EMPTY_SEGMENTSプロシージャ
このプロシージャは、空の表(または表の一部)とその依存オブジェクトからセグメントを削除します。
構文
DBMS_SPACE_ADMIN.DROP_EMPTY_SEGMENTS ( schema_name IN VARCHAR2 DEFAULT NULL, table_name IN VARCHAR2 DEFAULT NULL, partition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表149-5 DROP_EMPTY_SEGMENTSプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
スキーマの名前。 |
|
表の名前。 |
|
パーティションの名前 |
使用上のノート
スキーマ名が指定されると、このプロシージャはそのスキーマ内のすべての表をスキャンします。各表について、表またはその一部が空であることが検出され、その表が一定の基準を満たしている場合(この制限は遅延セグメント作成の制限に関する項に記載されている制限と同じです)、空の表の一部および関連索引のセグメントは、対応するLOBデータおよび索引のセグメントとともに削除されます。後続の挿入操作では、同じプロパティを持つセグメントが作成されます。
オプションとして次のように設定できます。
-
schema_name
を指定しないと、すべてのスキーマに属している表がスキャンされます。 -
schema_name
とtable_name
の両方を指定すると、指定した表に対して操作が実行されます。 -
3つの引数をすべて指定すると、操作は指定したパーティションとその依存オブジェクトに制限されます。
149.4.4 GET_SEGADV_ATTRIBプロシージャ
このプロシージャは、DBMS_SPACE_ADMIN
パッケージの属性の値を戻します。
構文
DBMS_SPACE_ADMIN.GET_SEGADV_ATTRIB( attribute IN NUMBER, value OUT NUMBER);
パラメータ
表149-6 GET_SEGADV_ATTRIBプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
サポートされる属性:
|
|
サポートされる値:
|
149.4.5 MATERIALIZE_DEFERRED_SEGMENTSプロシージャ
このプロシージャは、遅延セグメント作成が設定された表(および表の一部)とその依存オブジェクトに対してセグメントを実体化します。
構文
DBMS_SPACE_ADMIN.MATERIALIZE_DEFERRED_SEGMENTS ( schema_name IN VARCHAR2 DEFAULT NULL, table_name IN VARCHAR2 DEFAULT NULL, partition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表149-7 MATERIALIZE_DEFERRED_SEGMENTSプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
スキーマの名前。 |
|
表の名前。 |
|
パーティションの名前 |
使用上のノート
スキーマ名が指定されると、このプロシージャはそのスキーマ内のすべての表をスキャンします。各表について、表またはその一部に遅延セグメント・プロパティが設定されている場合、それらの表の一部とその依存オブジェクトに対して新規セグメントが作成されます。
オプションとして次のように設定できます。
-
schema_name
を指定しないと、すべてのスキーマに属している表がスキャンされます。 -
schema_name
とtable_name
の両方を指定すると、指定した表に対して操作が実行されます。 -
3つの引数をすべて指定すると、操作は指定したパーティションとその依存オブジェクトに制限されます。
149.4.6 SEGMENT_CORRUPTプロシージャ
このプロシージャは、適切なエラー・リカバリを実行できるように、セグメントを破損または有効としてマークします。
これは、SYSTEM
表領域では使用できません。
構文
DBMS_SPACE_ADMIN.SEGMENT_CORRUPT ( tablespace_name IN VARCHAR2, header_relative_file IN POSITIVE, header_block IN NUMBER, corrupt_option IN POSITIVE DEFAULT SEGMENT_MARK_CORRUPT);
パラメータ
表149-8 SEGMENT_CORRUPTプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが常駐している表領域名。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
|
使用上の注意
セグメント・ヘッダー・ブロックの相対ファイル番号およびブロック番号(header_relative_file
パラメータおよびheader_block
パラメータ)は、DBA_SEGMENTS
を問い合せて決定します。
例
次の例では、セグメントを破損としてマークします。
EXECUTE DBMS_SPACE_ADMIN.SEGMENT_CORRUPT('USERS', 4, 33, DBMS_SPACE_ADMIN.SEGMENT_MARK_CORRUPT);
次の例では、破損のセグメントを有効としてマークします。
EXECUTE DBMS_SPACE_ADMIN.SEGMENT_CORRUPT('USERS', 4, 33, DBMS_SPACE_ADMIN.SEGMENT_MARK_VALID);
149.4.7 SEGMENT_DROP_CORRUPTプロシージャ
このプロシージャは、現在破損としてマークされているセグメントを削除します(領域の再生なし)。
これを実行するには、セグメントが一時的としてマークされている必要があります。破損のセグメントを一時的としてマークするには、セグメントでDROP
コマンドを発行します。
構文
DBMS_SPACE_ADMIN.SEGMENT_DROP_CORRUPT ( tablespace_name IN VARCHAR2, header_relative_file IN POSITIVE, header_block IN NUMBER);
パラメータ
表149-9 SEGMENT_DROP_CORRUPTプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが常駐している表領域名。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
使用上のノート
-
セグメント用の領域は解放されないため、TABLESPACE_FIX_BITMAPSプロシージャまたはTABLESPACE_REBUILD_BITMAPSプロシージャを使用して調整する必要があります。
-
SYSTEM
表領域では使用できません。 -
セグメント・ヘッダー・ブロックの相対ファイル番号およびブロック番号(
header_relative_file
パラメータおよびheader_block
パラメータ)は、DBA_SEGMENTS
を問い合せて決定します。
例
EXECUTE DBMS_SPACE_ADMIN.SEGMENT_DROP_CORRUPT('USERS', 4, 33);
149.4.8 SEGMENT_DUMPプロシージャ
このプロシージャは、特定のセグメントのセグメント・ヘッダーおよびビットマップ・ブロックを、USER_DUMP_DEST
初期化パラメータで指定した場所にダンプします。
構文
DBMS_SPACE_ADMIN.SEGMENT_DUMP ( tablespace_name IN VARCHAR2, header_relative_file IN POSITIVE, header_block IN NUMBER, dump_option IN POSITIVE DEFAULT SEGMENT_DUMP_EXTENT_MAP);
パラメータ
表149-10 SEGMENT_DUMPプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが常駐している表領域名。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
次のオプションのいずれかです。
|
使用上のノート
-
SEGMENT_DUMP_BITMAP_SUMMARY
をdump_option
パラメータとして渡す場合は、少し簡略化されたダンプ(セグメント・ヘッダーおよびビットマップ・ブロックの要約は含むが、各ブロックの空き領域の割合は含まない)を作成できます。 -
セグメント・ヘッダー・ブロックの相対ファイル番号およびブロック番号(
header_relative_file
パラメータおよびheader_block
パラメータ)は、DBA_SEGMENTS
.HEADER_FILE
を問い合せて決定します。HEADER_FILE
が1023よりも大きい場合、DBA_DATA_FILES
.RELATIVE_FNO
を使用します。
例
EXECUTE DBMS_SPACE_ADMIN.SEGMENT_DUMP('USERS', 4, 33);
149.4.9 SEGMENT_VERIFYプロシージャ
このプロシージャは、セグメントのエクステント・マップと表領域のファイル・ビットマップ間の一貫性をチェックします。
構文
DBMS_SPACE_ADMIN.SEGMENT_VERIFY ( tablespace_name IN VARCHAR2, header_relative_file IN POSITIVE, header_block IN NUMBER, verify_option IN POSITIVE DEFAULT SEGMENT_VERIFY_EXTENTS);
パラメータ
表149-11 SEGMENT_VERIFYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
セグメントが常駐している表領域名。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
セグメント・ヘッダーの相対ファイル番号。 |
|
チェックの種類: |
使用上のノート
-
すべてのブロック範囲で誤った領域表現として検出された異常は、ブロック範囲、ビットマップ・ブロック、ビットマップ・ブロック範囲、異常情報としてトレース・ファイルに出力されます。レポートされる問題の種類は、空きとみなされない空き領域、空きとみなされた使用領域、および複数のセグメントで使用中とみなされた同一領域です。
-
セグメント・ヘッダー・ブロックの相対ファイル番号およびブロック番号(
header_relative_file
パラメータおよびheader_block
パラメータ)は、DBA_SEGMENTS
を問い合せて決定します。
例
次の例では、相対ファイル番号4、ブロック番号33のセグメント・ヘッダーを持つセグメントで、エクステント・マップとビットマップが同期していることを検証します。
EXECUTE DBMS_SPACE_ADMIN.SEGMENT_VERIFY('USERS', 4, 33, DBMS_SPACE_ADMIN.SEGMENT_VERIFY_EXTENTS);
149.4.10 SET_SEGADV_ATTRIBプロシージャ
このプロシージャは、DBMS_SPACE_ADMIN
パッケージの属性の値を設定します。
構文
DBMS_SPACE_ADMIN.SET_SEGADV_ATTRIB( attribute IN NUMBER, value IN NUMBER);
パラメータ
表149-12 SET_SEGADV_ATTRIBプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
サポートされる属性:
|
|
サポートされる値:
|
149.4.11 TABLESPACE_FIX_BITMAPSプロシージャ
このプロシージャは、適切なブロック範囲(エクステント)を、ビットマップ上で空きまたは使用中としてマークします。これは、SYSTEM
表領域では使用できません。
構文
DBMS_SPACE_ADMIN.TABLESPACE_FIX_BITMAPS ( tablespace_name IN VARCHAR2, dbarange_relative_file IN POSITIVE, dbarange_begin_block IN POSITIVE, dbarange_end_block IN POSITIVE, fix_option IN POSITIVE);
パラメータ
表149-13 TABLESPACE_FIX_BITMAPSプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前。 |
|
ブロック範囲(エクステント)の相対ファイル番号。 |
|
エクステントの開始ブロック番号。 |
|
エクステントの終了ブロック番号(この番号を含める)。 |
|
次のオプションのいずれかです。
|
例
次の例では、相対ファイル番号4の、ブロック番号33からブロック番号83までの51ブロックのビットを、ビットマップ内でUSED
としてマークします。
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_FIX_BITMAPS('USERS', 4, 33, 83, DBMS_SPACE_ADMIN.EXTENT_MAKE_USED);
または、オプションにTABLESPACE_EXTENT_MAKE_FREE
を指定して、ビットマップ内でビットを空きとしてマークします。BEGIN
ブロックとEND
ブロックはエクステント境界内にあり、エクステントの倍数である必要があります(そうでない場合は、エラーが発生します)。
149.4.12 TABLESPACE_FIX_SEGMENT_STATESプロシージャ
このプロシージャは、移行が異常終了した表領域内のセグメントの状態を修正します。
ローカルから、またはローカルへの表領域の移行中、セグメントは一時的な状態に置かれます。移行が異常終了すると、イベント10906の設定時点でセグメントの状態がSMONによって訂正されます。セグメントがこのような一時的な状態にあるデータベースは、ダウングレードできません。このプロシージャは、このようなセグメントの状態を修正するために使用できます。
構文
DBMS_SPACE_ADMIN.TABLESPACE_FIX_SEGMENT_STATES ( tablespace_name IN VARCHAR);
パラメータ
表149-14 TABLESPACE_FIX_SEGMENT_STATESプロシージャのパラメータ
パラメータ名 | 説明 |
---|---|
|
セグメントを修正する必要がある表領域の名前。 |
使用上のノート
このプロシージャをコールしたときは、表領域はオンラインを維持して読込み/書込みを行う必要があります。
例
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_FIX_SEGMENT_STATES('TS1')
149.4.13 TABLESPACE_MIGRATE_FROM_LOCALプロシージャ
このプロシージャは、ローカルに管理される表領域をディクショナリ管理の表領域に移行します。
構文
DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_FROM_LOCAL ( tablespace_name IN VARCHAR2);
パラメータ
表149-15 TABLESPACE_MIGRATE_FROM_LOCALプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前。 |
使用上のノート
移行中、表領域はオンラインを維持して読込み/書込みを行う必要があります。一時表領域の移行とSYSTEM
表領域の移行はサポートされていません。
例
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_FROM_LOCAL('USERS');
149.4.14 TABLESPACE_MIGRATE_TO_LOCALプロシージャ
このプロシージャは、ディクショナリ管理形式からローカル管理形式に表領域を移行します。ローカル管理形式に移行した表領域は、ユーザーが管理します。
構文
DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL ( tablespace_name IN VARCHAR2, unit_size IN POSITIVE DEFAULT NULL, rfno IN POSITIVE DEFAULT NULL);
パラメータ
表149-16 TABLESPACE_MIGRATE_TO_LOCALプロシージャのパラメータ
パラメータ名 | 説明 |
---|---|
|
移行する表領域の名前。 |
|
ブロック数で指定された表領域のビットマップ単位サイズ(割当て可能な領域の最小許容チャンク・サイズ)。 |
|
ビットマップ・ブロックが配置されるファイルの相対ファイル番号。 |
使用上のノート
-
SYSTEM
表領域を移行する前に、読込み/書込みモードで使用するディクショナリ管理の表領域をローカル管理に移行してください。SYSTEM
表領域を移行した後で、ディクショナリ管理表領域を読込み/書込みモードに変更することはできません。 -
移行中、表領域はオンラインを維持して読込み/書込みを行う必要があります。一時表領域は移行できないことに注意してください。
-
割当て単位はオプションで指定できます。デフォルトは、表領域の全エクステント(使用中または空き)の最大公約数に基づいてシステムで計算されます。この数値は、表領域の
MINIMUM EXTENT
に基づきさらに減少します(MINIMUM EXTENT
が指定されていない場合は5)。したがって、計算された値が表領域のMINIMUM EXTENT
を超えることはありません。各ファイルの最後にある空きエクステントは、最大公約数の計算については無視されます。単位サイズを指定する場合は、システムで計算されたunit_size
の因数とする必要があり、それ以外の場合はエラー・メッセージが戻ります。 -
相対ファイル番号のパラメータは、目的のファイルにビットマップを配置するために使用されます。ファイルに領域が見つからないと、エラーが発行されます。指定するデータファイルは、移行する表領域の一部である必要があります。データ・フローを指定しない場合、初期ビットマップ・ブロックを配置するデータ・フローはシステムで選択されます。初期ビットマップに必要な領域が見つからないと、エラーになります。
例
次の例は、最小エクステント・サイズ1MBで2KBのブロック・サイズの表領域'TS1'を移行します。
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL('TS1', 512, 2);
ビットマップは、相対ファイル番号2のファイルに配置されます。
149.4.15 TABLESPACE_REBUILD_BITMAPSプロシージャ
このプロシージャは、適切なビットマップを再作成します。ビットマップ・ブロックが指定されていない場合は、指定の表領域のすべてのビットマップが再作成されます。
SYSTEM
表領域では使用できません。
構文
DBMS_SPACE_ADMIN.TABLESPACE_REBUILD_BITMAPS ( tablespace_name IN VARCHAR2, bitmap_relative_file IN POSITIVE DEFAULT NULL, bitmap_block IN POSITIVE DEFAULT NULL);
パラメータ
表149-17 TABLESPACE_REBUILD_BITMAPSプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前。 |
|
再作成するビットマップ・ブロックの相対ファイル番号。 |
|
再作成するビットマップ・ブロックのブロック番号。 |
使用上のノート
すべてのファイルの再作成のみサポートされます。
例
次の例では、USERS
表領域にあるすべてのファイルについて、ビットマップを再作成します。
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_REBUILD_BITMAPS('USERS');
149.4.16 TABLESPACE_REBUILD_QUOTASプロシージャ
このプロシージャは、指定の表領域に関する割当て制限を再作成します。
構文
DBMS_SPACE_ADMIN.TABLESPACE_REBUILD_QUOTAS ( tablespace_name IN VARCHAR2);
パラメータ
表149-18 TABLESPACE_REBUILD_QUOTASプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前。 |
例
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_REBUILD_QUOTAS('USERS');
149.4.17 TABLESPACE_RELOCATE_BITMAPSプロシージャ
このプロシージャは、指定先にビットマップを再配置します。
構文
DBMS_SPACE_ADMIN.TABLESPACE_RELOCATE_BITMAPS ( tablespace_name IN VARCHAR2, filno IN POSITIVE, blkno IN POSITIVE);
パラメータ
表149-19 TABLESPACE_RELOCATE_BITMAPSプロシージャのパラメータ
パラメータ名 | 説明 |
---|---|
|
表領域の名前。 |
|
宛先ファイルの相対ファイル番号。 |
|
宛先範囲のブロック番号。 |
使用上のノート
-
表領域のディクショナリ管理からローカル管理形式への移行を行うと、ビットマップ・ブロックを含んだ
SPACE HEADER
セグメントが作成される場合があります。SPACE
HEADER
セグメントは、ユーザー・データとして取り扱われます。ユーザーがファイルのサイズを明示的にSPACE HEADERセグメント以下に変更すると、エラーが発行されます。制御情報を別の場所に移してからファイルのサイズを変更する場合は、TABLESPACE_RELOCATE_BITMAPS
コマンドを使用します。 -
このプロシージャは、
SYSTEM
表領域では使用できません。 -
ビットマップの再配置中は、表領域はオンラインを維持して読込み/書込みを行う必要があります。ビットマップの再配置は、移行したローカル管理表領域でのみ実行できます。
例
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_RELOCATE_BITMAPS('TS1', 3, 4);
ビットマップをファイル3、ブロック4に移動します。
ノート:
ソース・アドレスと宛先アドレスはオーバーラップできません。宛先ブロック番号は単位の境界まで切り下げられます。宛先位置にユーザー・データが存在すると、エラーになります。
149.4.18 TABLESPACE_VERIFYプロシージャ
このプロシージャは、表領域内のセグメントについて、ビットマップとエクステント・マップが同期していることを検証します。
構文
DBMS_SPACE_ADMIN.TABLESPACE_VERIFY ( tablespace_name IN VARCHAR2, verify_option IN POSITIVE DEFAULT TABLESPACE_VERIFY_BITMAP);
パラメータ
表149-20 TABLESPACE_VERIFYプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
表領域の名前。 |
|
|
例
EXECUTE DBMS_SPACE_ADMIN.TABLESPACE_VERIFY('USERS');