PREPARATION
受験対策

Silverの例題解説 - S2 運用管理(Ver.3.0)

このページではメルマガで紹介した例題のアーカイブを試験のレベルごとにまとめています。
是非、OSS-DBの学習にお役立てください。

修正等により、例題番号が連番ではない場合がございます。あらかじめご了承ください。

S2.5 基本的な運用管理作業(情報スキーマとシステムカタログ)

2.140 NEW

PostgreSQL の標準付属ツールについて、正しい記述をすべて答えなさい。

  1. pg_config は、 PostgreSQL のGUCパラメータを確認できる。

  2. pg_controldata は、 PostgreSQL データベースクラスタのWAL やタイムラインに関する制御情報を確認できる。

  3. pg_isready は、PostgreSQL サーバの起動状態を確認できる。
  4. pg_resetwal は、WALファイル を消去することができる。

S2.5 基本的な運用管理作業(情報スキーマとシステムカタログ)

2.139

情報スキーマとシステムカタログ について、適切なものを3つ選びなさい。

  1. 情報スキーマの形式は、SQL標準規格で規定されたものである。

  2. 情報スキーマとシステムカタログで確認できる情報量は同等である。

  3. PostgreSQL のシステムカタログは pg_system という名前のスキーマで定義されている。
  4. PostgreSQL のシステムカタログには、基本的に先頭に「pg_」が付く。
  5. pg _database カタログはデータベースごとに存在するものではなく、各データベースクラスタに1つ存在する。


S2.3 バックアップ方法(トランザクションログ(WAL)とWALアーカイブ)

2.138

トランザクションログ(WAL)とWALアーカイブの説明として、適切なものを2つ選びなさい。

  1. WALファイル および WALアーカイブ は、PITR(Point In Time Recovery)に利用される。

  2. 1つあたりの WALファイル のサイズは、 8KB である。

  3. WALファイル と WALアーカイブ ではそれぞれファイル構造が異なる。
  4. WALアーカイブ の出力先は パラメータ "restore_command" に設定する。
  5. WALファイル は デフォルトでは、"$PGDATA/pg_wal" ディレクトリ下に作成される。


S2.5 基本的な運用管理作業(PostgreSQLの起動・停止方法)

2.137

データベースの停止コマンド pg_ctl stop について、適切なものを2つ選びなさい。

  1. -mオプションでシャットダウン方式を選択できるが、PostgreSQL12以降のデフォルトは「fast」である。

  2. どのモードでも、クライアントとの接続が存在する間は、サーバは停止されない。

  3. 「immediate」モードは、次回のサーバ起動時にクラッシュリカバリ処理が行われる。
  4. 「immediate」モードは、次回のサーバ起動時にPostgreSQL設定ファイルの変更が反映されない。
  5. -tオプションで停止処理が開始されるまでの秒数を指定することができる。


S2.4 バックアップ方法(非排他的低レベルバックアップ)

2.136

非排他的低レベルバックアップの説明として、誤っているものを2つ選びなさい。

  1. 稼働中のPostgreSQLに接続して、pg_start_backup()関数やpg_stop_backup()関数を使用する。

  2. pg_stop_backup()関数の実行後、backup_labelとtablespace_mapの2つのファイルが自動的に生成される。

  3. pg_start_backup()関数やpg_stop_backup()関数のオプションを指定しない場合、排他的モードで動作する。
  4. 排他的モードは推奨されていない。
  5. 非排他的低レベルバックアップで取得したバックアップはPITRに利用できない。


S2.2 標準付属ツールの使い方(createdb/dropdb)

2.135

dropdb コマンドの説明として適切なものを3つ選びなさい。

  1. psqlなどでデータベースに接続して、DROP DATABASEコマンドを実行しても同じことが実現できる。

  2. createdbコマンドで作成したデータベースとCREATE DATABASEコマンドで作成したデータベースのどちらでも削除することができる。

  3. 他のホストで稼働中のデータベースを削除することもできる。
  4. 実行するにはスーパーユーザーまたはCREATEDB権限が必要である。
  5. 削除するデータベースは中身が空でなければならず、データが入っていたらエラーになる。


S2.2 標準付属ツールの使い方(createuser/dropuser)

2.134

createuserコマンドの説明として最も適切なものを3つ選びなさい。

  1. 実行するにはデータベースのスーパーユーザー権限が必要である。

  2. 他のホストで稼働中のデータベースにユーザを作成することもできる。

  3. オプションで例えば “-P hoge” と指定すれば、新しいユーザのパスワードは hoge になる。
  4. psql でデータベースに接続して、CREATE USERコマンドを使えば、createuser コマンドと同じことが実現できる。
  5. createuser コマンドで作成したユーザを削除するには dropuser コマンドを使っても良いし、psql などでデータベースに接続してDROP USERコマンドを実行しても良い。


S2.1 インストール方法

2.133

initdbコマンドの説明として最も適切なものを3つ選びなさい。

  1. データベースの管理者となるユーザで実行する。

  2. Linuxではrootがシステム管理者なので、initdbもrootで実行する。

  3. データベースクラスタが作成され、データベースにpsqlなどで接続できるようになる。
  4. データベースクラスタの作成先となるディレクトリを事前に作成しておいても良いが、中身は空でなければならない。
  5. template0、template1、postgresの3つのデータベースが作成される。


S2.2 標準付属ツールの使い方

2.132

PostgreSQLの標準付属ツールの使い方の説明として、最も適切なものを3つ選びなさい。

  1. pg_config はPostgreSQLデータベースの設定パラメータの値を変更することができる。

  2. pg_controldataはネットワーク経由で送受信されるデータサイズを制限するために利用できる。
  3. pg_ctl はPostgreSQLデータベースを起動あるいは停止させることができる。
  4. pg_isreadyはPostgreSQLデータベースが接続可能な状態かどうかを確認できる。
  5. pg_resetwalはデータベースファイルが破損するなどしてデータベースサーバが起動できないときの最後の手段として利用できる。


S2.1 インストール方法(initdbコマンドの使い方)

2.131

initdbコマンドを実行してデータベースクラスタを作成することについて、もっとも適切な説明を3つ選びなさい。

  1. デフォルトでは、実行したユーザのみがデータベースクラスタのファイルにアクセスできる。

  2. データベースサーバープロセスの所有者となるユーザが実行する。
  3. セキュリティを堅固にするため、rootユーザで実行するのが望ましい。
  4. 作成されるデータベースクラスタには、テンプレートデータベースが2つと通常のデータベースが1つ含まれる。
  5. データベースクラスタ作成時に指定する文字セット符号化方式はクラスタ内の全データベースで共通となるので、何を指定するか十分に注意する必要がある。


S2.5 基本的な運用管理作業(テーブル単位の権限(GRANT/REVOKE))

2.130

テーブルのアクセス権限をGRANT/REVOKEで管理することに関して、最も適切な記述を1つ選びなさい。

  1. 自分にアクセス権限があれば、その権限を他のユーザにGRANTで付与することができる。

  2. GRANTされたアクセス権限をREVOKEで取り消すことができるのは、スーパーユーザとテーブルの所有者だけである。
  3. テーブルの所有者は、テーブルに対してすべての権限を有するので、REVOKEでSELECT権限を取り消しても、引き続きテーブルからデータをSELECTできる。
  4. テーブルt1についてのSELECT権限をユーザu1とpublicに対してGRANTした後、この権限をu1からREVOKEした。このとき、ユーザu1はテーブルt1のデータをSELECTできない。
  5. テーブルt2についてのSELECT権限をユーザs1がユーザu2にGRANTした後、ユーザs2も同じユーザu2にGRANTした。この後、ユーザs1がt2についてのSELECT権限をu2からREVOKEした。このとき、ユーザu2はテーブルt2のデータをSELECTできる。なお、ユーザs1もs2もt2のSELECTをGRANTする権限を有するものとする。

S2.5 基本的な運用管理作業(自動バキュームの概念と動作)

2.129

自動バキュームの説明としてもっとも適切なものを3つ選びなさい。

  1. すべてのテーブルに対して一定時間ごとにVACUUM処理が実行される。

  2. データの更新量が一定の基準より大きくなったテーブルについてVAUUMを実行する。
  3. データベースの負荷が低い時間帯にのみ実行されるような工夫がされている。
  4. 同時に多数のVACUUMが並行して実行されないような工夫がされている。
  5. 一時テーブルは自動バキュームの対象外なので、必要ならVACUUMを実行するためのSQLを発行しなければならない。

S2.5 基本的な運用管理作業(VACUUM、ANALYZEの目的と使い方)

2.128

ANALYZEについてもっとも適切な説明を3つ選びなさい。

  1. ユーザは、自身が所有するテーブルに対してANALYZEを実行するごとができる。

  2. ANALYZEを実行することは、SELECTなどのSQLを実行するときの性能(速度)を最適化するために重要である。
  3. ANALYZEは対象テーブルの全データを検証するので非常に負荷が高い。夜間などデータベースアクティビティが少ない時間帯に実行するのが望ましい。
  4. VACUUMコマンドを実行すると、同じテーブルについてANALYZEも自動的に実行される。
  5. 自動バキュームを実行すると、VACUUMだけでなく、ANALYZEも自動的に実行される。

S2.5 基本的な運用管理作業(データベースロール / ユーザの追加・削除・変更方法)

2.127

次のうち、ALTER USERまたはALTER ROLEで実行できることを3つ選びなさい。

  1. データベースユーザを新規に作成する。

  2. データベースユーザのパスワードを変更する。
  3. データベースユーザにユーザ作成の権限を付与する。
  4. データベースユーザを管理者ユーザに変更する。
  5. データベースユーザに特定のテーブルへのアクセス権限を付与する。

S2.5 基本的な運用管理作業(データベースロール・ユーザの概念)

2.126

次のうち、PostgreSQLのGRANTで実行できないものを1つ選びなさい。

  1. テーブルからのSELECTなど、オブジェクトへのアクセス権限をユーザに付与する。
  2. テーブルからのSELECTなど、オブジェクトへのアクセス権限をロールに付与する。
  3. データベース作成の権限(CREATEDB)をロールに付与する。
  4. ロールに付与したすべての権限を一括でユーザに付与する。
  5. ロールに付与したすべての権限を一括で別のロールに付与する。

S2.5 基本的な運用管理作業(PostgreSQLの起動・停止方法)

2.125

PostgreSQLデータベースを起動する方法、停止する方法として間違っているものを1つ選びなさい。

  1. 適切なオプションを指定して postgres コマンドを実行することでデータベースを起動する。
  2. 適切なオプションを指定して pg_ctl コマンドを実行することでデータベースを起動する。
  3. 適切なオプションを指定して postgres コマンドを実行することでデータベースを停止する。
  4. 適切なオプションを指定して pg_ctl コマンドを実行することでデータベースを停止する。
  5. kill コマンドなどを利用して postgres プロセスに適切なシグナルを送信することでデータベースを停止する。

S2.4 バックアップ方法(COPY文(SQL)、¥copyコマンド(psql)の使い方)

2.124

psql を起動して、

¥copy tablex from '/path/to/filename'

を実行する。以下の説明から適切なものを3つ選びなさい。

  1. テーブル tablex にファイル /path/to/filename の内容が追加される。
  2. ファイルからデータをロードするために簡便なコマンドであるだけでなく、SQLのINSERTを使うよりも高速に処理される。
  3. /path/to/filename はデータベースサーバ上のファイルなので、データベースプロセスを実行しているユーザ(典型的には postgres)にアクセス権限が必要である。
  4. /path/to/filename はタブ区切りのテキストファイルである。
  5. このコマンドを実行するには、データベースの管理者権限が必要である。

S2.4 バックアップ方法(トランザクションログ(WAL)とWALアーカイブ)

2.123

WALアーカイブの説明として最も適切なものを3つ選びなさい。

  1. ポイントインタイムリカバリ(PITR)を使用するには、WALアーカイブを有効にする必要がある。
  2. 複数のWALファイルを1つのファイルにまとめる機能である。
  3. 設定パラメータ archive_command で指定したコマンドが実行される。
  4. コマンドの実行に失敗しても再実行されないことに注意する必要がある。
  5. PostgreSQLはコマンドを実行したかどうかは管理するが、コマンドが実際に何をしているのか、WALアーカイブとして適切な処理をしているかどうかは関知しない。

S2.4 バックアップ方法(ポイントインタイムリカバリ(PITR)の概念と手順)

2.122

ポイントインタイムリカバリ(PITR)のベースバックアップ取得の手順として間違っているものを選びなさい。

  1. WALアーカイブを有効にする。
  2. データベースに接続し、pg_start_backup を実行する。
  3. データベースサーバを停止する。
  4. tar コマンドでデータベースクラスタ全体のコピーを取得する。
  5. データベースに接続し、pg_stop_backup を実行する。

S2.4 バックアップ方法(ファイルシステムレベルのバックアップとリストア)

2.121

LinuxホストX上でPostgreSQL 12.4が稼働している。データベースサーバを停止し、PGDATAのディレクトリをtarコマンドでバックアップし、別のLinuxホストYにコピーして展開した。ホストYでPostgreSQLを稼働させるとき、コピーしたデータベースをそのまま利用するための条件として最も適切なものはどれか。

  1. PostgreSQLのバージョンがホストXと同じ12.4である必要がある。
  2. PostgreSQLのメジャーバージョンが12、マイナーバージョンが4以上であれば良い。
  3. PostgreSQLのメジャーバージョンが12であれば、マイナーバージョンは4以上でも4未満でも良い。
  4. PostgreSQLのメジャーバージョンが12以上であれば良い。
  5. Linux上で動作するPostgreSQLであれば、バージョンは何でも良い。

企業の基幹システムや業務システム、AIなどの
新領域での「PostgreSQL」の採用が拡大している中、
昇格・昇給・就職・転職に必ず役立つ認定です

OSS-DBの受験対策

受験の学習をサポートする情報や対策に役立つ情報をご紹介

例題解説

例題のアーカイブを試験ごとにまとめています。OSS-DB技術者認定試験の学習にお役立てください

学習教材・教育機関ご紹介

OSS-DB認定教材や教育機関について詳しくご説明いたします。

無料技術解説セミナー

受験準備をされていらっしゃる方々を対象に、無料技術解説セミナーの日程をお知らせしています。

OSS-DB道場

OSS-DBやPostgreSQLの知識、技術を得るために役立つ情報の紹介やコラムを公開しています。