説明
このステートメントは、リソースユニットを削除するために使用されます。
注意
リソースユニットを削除する前に、現在のリソースユニットが使用されていないことを確認する必要があります。リソースユニットが使用中の場合は、まずリソースプールから削除してから削除してください。
構文
DROP RESOURCE UNIT unit_name;
パラメータの説明
パラメータ |
説明 |
|---|---|
| unit_name | 削除するリソースユニットの名前。 |
例
リソースユニットがリソースプールに割り当てられていない場合、リソースユニット
unit1を直接削除できます。obclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affectedリソースユニットがリソースプールに割り当てられている場合、リソースユニットのみを削除したい場合は直接削除できません。リソースユニットをリソースプールから外してから削除する必要があります。
例えば、以下の例では、リソースユニット
unit1はリソースプールpool1に割り当てられています。obclient> CREATE RESOURCE POOL pool1 UNIT='unit1', UNIT_NUM=1, ZONE_LIST=('zone2');リソースユニット
unit1を直接削除すると、エラーが発生します。obclient> DROP RESOURCE UNIT unit1; ERROR 4634 (HY000): resource unit 'UNIT1' is referenced by some resource poolこの場合でも、
unit1をリソースプールpool1から外す必要がある場合は、新しいリソースユニットunit2を作成し、unit2をpool1に割り当てた後、unit1を削除することができます。例は以下の通りです。新しいリソースユニット
unit2を作成します。obclient> CREATE RESOURCE UNIT unit2 MAX_CPU 4, MEMORY_SIZE '5G', MAX_IOPS 1280,LOG_DISK_SIZE '10G', MIN_CPU=4, MIN_IOPS=1024;unit1をリソースプールpool1から外します。obclient> ALTER RESOURCE POOL pool1 UNIT='';注意
ALTER RESOURCE POOLコマンドは、1回の実行でリソースプールに対して1つのリソースユニットのみを追加または削除できるため、unit1を削除してから、unit2を追加する必要があります。unit2をリソースプールpool1に割り当てます。obclient> ALTER RESOURCE POOL pool1 UNIT='unit2';再度リソースユニット
unit1を削除すると、削除が成功します。obclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affected
リソースユニットがリソースプールに割り当てられている場合、リソースプールとリソースユニットの両方をクリーンアップしたい場合は、リソースプールを削除してから、リソースユニットを削除する必要があります。
例えば、以下の例では、リソースユニット
unit1はリソースプールpool1に割り当てられています。obclient> CREATE RESOURCE POOL pool1 UNIT='unit1', UNIT_NUM=1, ZONE_LIST=('zone2');リソースユニット
unit1を直接削除すると、エラーが発生します。obclient> DROP RESOURCE UNIT unit1; ERROR 4634 (HY000): resource unit 'UNIT1' is referenced by some resource poolまずリソースプール
pool1を削除し、その後リソースユニットunit1を削除すると、削除が成功します。obclient> DROP RESOURCE POOL pool1; Query OK, 0 rows affectedobclient> DROP RESOURCE UNIT unit1; Query OK, 0 rows affected