用途
ALTER CLUSTER文を使用すると、クラスタの記憶特性および並列特性を再定義できます。
|
注意: クラスタ・キーの列番号および列名を変更するためにこの文を使用することはできません。また、クラスタを格納する表領域を変更することはできません。 |
|
関連項目: クラスタの作成については、「CREATE CLUSTER」を参照してください。クラスタからの表の削除については、「DROP CLUSTER」および「DROP TABLE」を参照してください。クラスタへの表の追加については、「CREATE TABLE」の「physical_properties」を参照してください。 |
構文
alter_cluster::=

(physical_attributes_clause ::=、size_clause::=、allocate_extent_clause ::=、deallocate_unused_clause ::=、parallel_clause::=を参照)
physical_attributes_clause ::=

(storage_clause::=を参照)

(size_clause::=を参照)

(size_clause::=を参照)

セマンティクス
schema
クラスタが含まれているスキーマを指定します。schemaを指定しない場合、クラスタは自分のスキーマ内にあるとみなされます。
cluster
変更するクラスタの名前を指定します。
クラスタのPCTUSEDパラメータ、PCTFREEパラメータおよびINITRANSパラメータの値を変更します。
クラスタの記憶特性を変更するには、STORAGE句を使用します。
物理属性の制限事項: クラスタの記憶域パラメータINITIALおよびMINEXTENTSの値は変更できません。
SIZE句を使用すると、クラスタに割り当てられたデータ・ブロック中に格納されるクラスタ・キーの数を指定できます。
SIZEの制限事項: ハッシュ・クラスタではなく、索引クラスタのSIZEパラメータのみを変更できます。
allocate_extent_clauseを指定すると、クラスタの新しいエクステントを明示的に割り当てることができます。
この句を使用して明示的にエクステントを割り当てるときは、表を作成するときとは異なり、Oracle Databaseがクラスタの記憶域パラメータを評価して次に割り当てるエクステントの新しいサイズを決定することはありません。したがって、Oracle Databaseのデフォルト値が使用されるのを避けるにはSIZEを指定してください。
deallocate_unused_clause句を使用すると、クラスタの終わりの未使用領域の割当てを明示的に解除し、解放された領域が他のセグメントで使用可能になります。
この句の動作は、CREATE CLUSTER文およびALTER CLUSTER文で同じです。
parallel_clauseを指定すると、クラスタの問合せのデフォルト並列度を変更できます。
例
次に、「CREATE CLUSTER」の「例」で作成したクラスタを変更する例を示します。
クラスタの変更例: 次の文は、personnelクラスタを変更します。
ALTER CLUSTER personnel SIZE 1024 CACHE;
この結果、各クラスタ・キー値に1024バイトが割り当てられ、CACHE属性が有効になります。データ・ブロックのサイズを2KBと想定した場合、このクラスタ内の今後のデータ・ブロックには、各ブロックに2つのクラスタ・キー(2KBを1024バイトで割った値)が含まれます。
未使用領域の解放例: 次の文は、languageクラスタから未使用領域の割当てを解除し、後で使用できるように30KBの未使用領域を保持します。
ALTER CLUSTER language DEALLOCATE UNUSED KEEP 30 K;