worker.bgw_restart_time = 1に設定しようとしています。これにより、システムクラッシュ時にバックグラウンドワーカーが再起動されます。postgresを再起動するとバックグラウンドワーカーpostgresqlを再起動するには?
しかし、postgres自体を再起動するとバックグラウンドワーカーを再起動します。それを行う方法はありますか?
worker.bgw_restart_time = 1に設定しようとしています。これにより、システムクラッシュ時にバックグラウンドワーカーが再起動されます。postgresを再起動するとバックグラウンドワーカーpostgresqlを再起動するには?
しかし、postgres自体を再起動するとバックグラウンドワーカーを再起動します。それを行う方法はありますか?
worker.bgw_restart_time = 1
は、バックグラウンドワーカープロセス自体がクラッシュした場合、バックグラウンドワーカープロセスが自動的にポストマスターによって再開されることを意味します。こうすることで、時折死にかけても、連続して実行されるバックグラウンドプロセスを維持することができます。
すべてのバックグラウンドワーカープロセスは、PostgreSQLサーバが完全に停止すると自動的に停止します。
再起動時には、バックグラウンドワーカーの初期化の仕方によって異なります。たとえば、shared_preload_libraries
でロードされた場合、自動的に起動します。他のケースでは、呼び出されたときにはるかに後に開始される可能性があります。
シャットダウン前に実行していたバックグラウンドワーカーを「覚えていて、再起動後にバックアップを開始する機能はありません。あなたは、あなたが設計しようとしているもののためにあなた自身のようなものを具体的に実装する必要があります。
ありがとうございます。それは実際にはshared_preload_librariesにロードするための素晴らしいソリューションです。 – akashag26
なぜタイマーを使用して再接続しようとしませんか? –
postgresを再起動するスクリプトがあるタイマー? – akashag26