今回は、Silverの「運用管理 - 基本的な運用管理作業(PostgreSQLの起動・停止方法)」からの出題です。
実行中のトランザクションについては、自動的にrollbackが実行される。
再起動時にリカバリ処理が行われる。
PostgreSQLのバージョン9.5以降はこのモードがデフォルトなので、”-m fast”がなくても同じ動作になる。
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2020年6月11日
PostgreSQLサーバを停止するには pg_ctl stop コマンドを使います。Linuxでパッケージをインストールした場合は、serviceやsystemctlコマンドなどを使いますが、内部的にpg_ctlコマンドが発行されます。
データベースを停止するとき、接続中のクライアントや実行中のトランザクションの処理方法について、3種類のモードがあり、それを -m オプションで指定します。
-m smart を指定した場合は、すべてのクライアントの接続が終了するのを待って、停止処理を行います。これがPostgreSQLバージョン9.4までのデフォルトでした。
-m fastを指定すると、すべてのクライアントの接続は強制的に切断され、実行中のトランザクションがあればそれらを自動的にrollbackした上でデータベースの停止処理を行います。PostgreSQLバージョン9.5以降はこれがデフォルトになっています。
-m immediateを指定すると、クリーンアップ処理を行わず、すべてのデータベースプロセスを即座に停止します。この場合、次回の起動時に自動的にリカバリ処理を行うことでデータベースを正常な状態に戻します。
したがって正解はCとEです。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.