今回は、Silverの「運用管理 - 標準付属ツールの使い方(createdb/dropdb)」からの出題です。
ネットワーク上の他のホストで稼働しているデータベースクラスタ上にデータベースを作成することができる。
データベースクラスタのユーザ権限があれば誰でも実行できる。
MySQLなどPostgreSQL以外のデータベースでも利用可能である。
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2019年9月11日
PostgreSQLのデータベースインスタンスは、複数のデータベースからなるデータベースクラスタが、1つのサーバプロセス群で管理される構成になっています。
データベースクラスタはinitdbコマンドで作成し、作成直後にはtemplate0, template1, postgres
の3つのデータベースが含まれます。新たにデータベースを追加するには、データベースに接続してSQLのCREATE
DATABASEコマンドを発行しますが、OSのコマンドラインからcreatedbコマンドを実行することでも、データベースに接続して、内部的にCREATE
DATABASEを発行して新しいデータベースが作成できます。データベースに接続しなければ、新しいデータベースを作成できませんから、データベースクラスタが稼働中である必要があります。createdb
の -h オプションと -p オプションで接続先のホスト名とポート番号を指定することで、ネットワーク上の他のホストで稼働中のデータベースに接続し、新しいデータベースを作成することも可能です。
データベースを作成するには、CREATEDBという特別な権限が必要で、データベースへの接続権限だけでは作成できません。
データベースインスタンスの構成はRDBMSの種類によって大きく異なります。CREATE
DATABASEというSQLコマンド自体がPostgreSQLの拡張であり、createdbコマンドもPostgreSQL独自のものです。データベースの作成方法はRDBMSの種類によって異なりますので注意してください。
したがって正解はBとCです。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.