ipcclean

名前

ipcclean -- クラッシュしたPostgreSQLサーバから共有メモリとセマフォを削除する

概要

ipcclean

説明

ipccleanは現在のユーザが所有権を持つ、全ての共有メモリセグメントとセマフォを削除します。 これはPostgreSQLサーバ(postgres)がクラッシュした後、クリーンアップのために使用することを目的としたコマンドです。 サーバを再起動すれば、共有メモリとセマフォのクリーンアップは行われるので、このコマンドはあまり実用的なユーティリティではないことに注意してください。

データベース管理者のみがこのコマンドを実行すべきです。 複数ユーザが実行した場合、おかしな動作(クラッシュなど)を引き起こすからです。 このコマンドがサーバが稼働中に実行された場合、サーバによって割り当てられた、そのサーバにとってかなり重大な意味を持つ共有メモリやセマフォも削除されます。

注釈

このスクリプトはハックです。 作成されてから何年も経過しているにもかかわらず、同様の効果があり、より移植性の高い方法は提案されていません。 現在では、postgres自身がクリーンアップを行えるようになったので、今後ipccleanが改良されることはないでしょう。

このスクリプトでは、ipcsユーティリティの出力形式を利用していますが、 これが利用できないオペレーティングシステムも存在します。 したがって、使用しているOSによっては動作しないことがあります。 実行する前に、スクリプトの内容を一読することをお勧めします。