HOME > 受験対策 > サンプル問題/例題解説 > Goldの例題解説「障害対応」

Goldの例題解説「障害対応」

Yahoo!ブックマークに登録

このページでは例題「障害対応」のアーカイブを試験ごとにまとめています。是非、OSS-DB技術者認定試験の学習にお役立てください。

[障害対応 - 起こりうる障害のパターン] から
Q. 以下のサーバログに関する説明として、適切なものを1つ選びなさい。

LOG: server process (PID 21334) was terminated by signal 11: Segmentation fault
DETAIL: Failed process was running: SELECT user_func();

  1. A. ユーザ要求によりクエリがキャンセルされた
  2. B. プロセスに対してpg_cancel_backend関数が発行された
  3. C. プロセスに対してpg_terminate_backend関数が発行された
  4. D. OOM KillerによりSIGKILLが発生した
  5. E. user_funcユーザ定義関数によりSIGSEGVが発生した

[障害対応 - ホット・スタンバイ復旧] から
Q. 2台のサーバでレプリケーションを行い、スタンバイサーバをホットスタンバイとして稼動させる。
サーバ間の通信が一時的に遮断し、その後に復旧した場合の説明として、適切ではないものを2つ選びなさい。
  1. A. レプリケーションの方式が同期か非同期かにかかわらず、通信が遮断中でも、マスタサーバでの参照系クエリは実行可能である
  2. B. レプリケーションの方式が同期か非同期かにかかわらず、通信が遮断中でも、スタンバイサーバでの参照系クエリは実行可能である
  3. C. 同期レプリケーションの場合は、通信が遮断中は、マスタサーバでの更新系クエリは待機させられる
  4. D. 通信復旧後のデータの再同期処理には、アーカイブWALが必須となる
  5. E. 通信復旧後のデータの再同期処理に、アーカイブWALが利用される際は、マスタサーバのGUCパラメータrestore_commandが実行され、スタンバイサーバにアーカイブWALが転送される

[障害対応 - 起こりうる障害のパターン] から
Q. PostgreSQLへの接続に関して、スーパーユーザでPostgreSQLに接続した際、以下のメッセージが出力された。

FATAL: sorry, too many clients already
このエラーメッセージが出力される原因として適切なものを1つ選びなさい。

  1. A. 同時接続数がmax_connectionsに設定した値を超えた。
  2. B. 同時接続数がsuperuser_reserved_connectionsに設定した値を超えた。
  3. C. 同時接続数がdb_connectionsに設定した値を超えた。
  4. D. 同時接続数が(max_connections - superuser_reserved_connections)の値を超えた。
  5. E. 同時接続数が(db_connections - superuser_reserved_connections)を超過した。

[障害対応 - 開発者向けオプション] から
Q. あるユーザテーブルの参照時に、以下のエラーメッセージが出力された。

「ERROR: invalid page header in block 0 of relation base/16408/16421」
この時の対処として最も適切なものを1つ選びなさい。

  1. A. データベース全体に対してVACUUMを実行する
  2. B. 該当のテーブルファイルを削除し、PostgreSQLを再起動する
  3. C. zero_damaged_pages を on に設定して再度テーブルを参照する
  4. D. 該当のシステムテーブルに対してCLUSTERを実行する
  5. E. PostgreSQLをシングルユーザ状態で起動し、該当のテーブルに定義されたインデックスに対してREINDEX INDEXを実行する

[障害対応 - トランザクションログ復旧] から
Q. PostgreSQLのWALファイルが破損した場合の復旧方法として正しいものを2つ選びなさい。
  1. A. pg_xlog領域のファイルをすべて削除し、PostgreSQLを再起動する
  2. B. PostgreSQLを起動したまま、環境変数PGDATAにデータベースクラスタ領域を指定してpg_resetxlogを実行する
  3. C. PostgreSQLを停止し、コマンドラインでデータベースクラスタ領域を指定してpg_resexlogを実行後にPostgreSQLを起動する
  4. D. pg_controldataファイルを削除し、PostgreSQLを再起動する
  5. E. pg_resetxlogの-xオプションで次のトランザクションIDを指定する場合は、pg_clogディレクトリ内のファイル名で最も大きな数字に1を加えて、1048576で乗算した値を用いる

[障害対応 - 破損クラスタ復旧] から
Q. システムカタログのインデックスに関する説明として、適切ではないものを1つ選びなさい。
  1. A. 共有システムカタログのインデックスは$PGDATA/global内に作成される。
  2. B. システムカタログのインデックスが破損している場合、サーバプロセスが起動時に強制終了する可能性がある。
  3. C. システムカタログの読み込み時にシステムインデックスを無視するにはGUCパラメータのignore_system_indexesを利用する。
  4. D. インデックスの破損範囲が不明な場合に、データベースの全てのシステムインデックスを再構成するためのSQLコマンドはREINDEX SYSTEMである。
  5. E. 共有システムカタログのいずれかのインデックスが破損した可能性がある場合は、必ずスタンドアロンサーバを使用して修復しなければいけない。

ページトップへ