今回は、Silverの「運用管理 - 標準付属ツールの使い方(createuser/dropuser)」からの出題です。
createuser -h pgserver -p 5432 -d -U john
-d
-U
間違っているオプションはない。
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2019年8月14日
データベースユーザを作成するには、権限のあるユーザでデータベースに接続し、SQL の CREATE USER を発行します。
PostgreSQL は OS のコマンドラインから実行する createuser コマンドを提供しており、これは、内部的にデータベースに接続し、CREATE USER(正確には CREATE ROLE)を実行します。
データベースに接続するためには、接続先のデータベースが稼働しているホスト名、ポート番号、接続に使用するユーザ名などを指定します(省略した場合はデフォルト値が使用されるので、必ずしも指定しなければならないわけではありません)。
接続先ホストは -h オプション、ポート番号は -p オプションで指定します。接続ユーザ名を指定するには -U オプションを使います。
また、ユーザを作成するには、作成するユーザ名、付与する権限などを指定します。
作成するユーザ名は、オプションを付けずにコマンドの最後に指定します。付与できるデータベース権限には、スーパーユーザ権限、データベース作成権限、ユーザ作成権限がありますが、データベース作成権限を付与するには -d オプションを指定します。
例題のコマンドでは、ホスト名(-h)、ポート番号(-p)、データベース作成権限(-d)は正しく指定されていますが、-U john はデータベースに john で接続することを指定する意味になってしまうので、間違っています。"-U" を消せば正しいコマンドになります。
従って、正解はDです。
データベース接続に使用するオプションは、psql や createdb など、他のクライアントコマンドでも共通なので、まとめて覚えておきましょう。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.