今回は、Silverの「運用管理 - 基本的な運用管理作業」からの出題です。
CREATE USERでユーザを作成すると、そのユーザ名に対応したスキーマが自動的に作成される。
CREATE USERを実行するには、CREATEROLE権限、あるいはそれと同等以上の適切な権限が必要である。
DROP USERでユーザを削除すると、そのユーザが所有していたオブジェクトも同時に削除される。
DROP USERを実行するには、DROPROLE権限、あるいはそれと同等以上の適切な権限が必要である。
ALTER USERでユーザの名前を変更することができる。
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2014年2月24日
データベースユーザの作成・削除・変更は、それぞれ、CREATE USER、DROP USER、ALTER USER文を使って行います。なお、PostgreSQLの実装では、ユーザとロールに違いがないので、CREATE ROLE、DROP ROLE、ALTER ROLEでも同じことができます。
ユーザの作成・削除・変更を行うには、CREATEROLE権限が必要です。もちろん、SUPERUSER権限を持つ管理者ユーザも同じ操作を実行できますが、DROPROLEという権限はありません。CREATEUSERという権限もありますが、これは廃止予定であり、またSUPERUSERと同じ意味なので注意してください。
PostgreSQLではCREATE USERを実行しても、スキーマは自動的には作られません。必要な場合は、CREATE SCHEMAで作ります。
DROP USERでユーザを削除するとき、そのユーザがテーブルなどのオブジェクトを所有している場合はエラーになります。ユーザが所有するオブジェクトを削除してからでなければ、ユーザを削除することはできません。
ALTER USER old_name RENAME TO new_name; を実行することにより、既存のユーザの名前を変更することができます。
従って、正解はBとEです。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.