今回は、Silverの「S2 運用管理 - S2.1 インストール方法(テンプレートデータベース)」からの出題です。
CREATE DATABASEを実行すると、内部的にはテンプレートデータベースの1つがコピーされる。
使用するテンプレートデータベースを指定しなければ、デフォルトではtemplate1が使用される。
デフォルトでは、データベースクラスタ内に2つのテンプレートデータベースが存在している。
データベースクラスタ内に作成できるテンプレートデータベースの数は最大で5個までである。
データベースがテンプレートデータベースかどうかを設定するフラグがあり、そのフラグが設定されているデータベースは削除(DROP DATABASE)できない。
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2017年5月22日
initdbによって新規に作成されたデータベースクラスタには、template0とtemplate1の2つのテンプレートデータベースが含まれます。
CREATE DATABASE文(あるいはcreatedbコマンド)によってデータベースを新規に作成すると、内部的にはテンプレートデータベースのコピーが作成されますが、このとき使用するテンプレートデータベースを指定しなければtemplate1が使用されます。
テンプレートデータベースは、データベースカタログpg_databaseのdatistemplateがtrueになっていること以外、データベースクラスタ内の他のデータベースと大きな違いがあるわけではありませんが、この属性が設定されていれば、CREATEDB権限があるユーザはすべて、そのテンプレートデータベースを参照してデータベースを作成できます。また、この属性が設定されているとDROP DATABASEで削除できなくなります。逆に、datistemplateがfalseの場合は、それをテンプレートとしてデータベースを作成できるのはデータベースの所有者およびスーパーユーザに制限され、またデータベースの削除も可能になります。
データベースクラスタ内に作成できるテンプレートデータベースの数に制限はありません。
誤っているものを選ぶ問題なので、正解はDです。
例題解説についてのご質問やご意見は以下からご連絡ください。
※本例題および解説は、例題作成者から提供されたものです。実際の試験問題とは異なります。
※実際の試験問題に関するお問い合わせについてはご回答いたしかねます。あからじめご了承ください。
© EDUCO All Rights Reserved.