note.mu/west2538/n/n687a96031f
ここを参考にpostgresのアップデートしていて、とりあえずpg_upgradeまでは進んだ。
しかし、pg_ctl startをすると
LOG: unrecognized configuration parameter "dynamic_shared_memory_type" in file "/var/lib/pgsql/9.6/data/postgresql.conf" line 127
FATAL: configuration file "/var/lib/pgsql/9.6/data/postgresql.conf" contains errors
となって先に進めない。
コンフィグファイルのパラメータを修正する必要があるのか?

@mamma なんか前後に画面では見えない変な空白とか入っちゃってないですかね。

@osapon こんな感じ。
パラメータとコメントの間はtabで開けてるっぽい

@mamma 動かしている環境ってなんでしょうか?アップグレード前はposixでしたか?

@osapon さくらのクラウドでOSはCentOS7です。
アップグレード前の状態はわかりません。

@mamma 他のメモリ設定(shared_buffers、temp_buffers)、あと搭載メモリ量は分かりますか?

@osapon shared_buffers = 128MB
#temp_buffers = 8MB
temp_buffersはコメントアウトされてます。
メモリは4GBです。

@mamma 同じマシン内で他のサービスは動いていますか?DB専用インスタンスなら、shared_buffers = 2GBでもいいです。

@osapon 動いてるのはmastodonだけです。
さくらのクラウドのスタートアップスクリプトで作ったインスタンスなんで。

@mamma うーん、スタートアップスクリプトなのに動かないの謎ですね。普通はposixで動くはずなのですが、sysvにしてみてだめそうだったらmmapで、それもダメならnoneにするしかないと思います。

@osapon ありがとうございます。
shared_buffersを増やした上で試してみます。

@mamma スタートアップスクリプトが作る構成が分かっていないのですが、一つのマシンでマストドンのいろいろなサービスが動いているようでしたら、shared_buffers=512MBぐらいで良いかもしれません。

@osapon dynamic_shared_memory_typeの設定を変えてもダメでした。
インスタンスを建てたときのコンフィグファイルは /var/lib/pgsql/data/postgresql.conf にありました。
*9.6をインストールしてできたコンフィグファイルは /var/lib/pgsql/9.6/data/postgresql.conf
で、古いコンフィグファイルにはdynamic_shared_memory_typeのパラメータはありませんでした。これは、postgresのバージョンが9.2だからだと思われます。
僕の素人考えの見解はこんな感じです→ mstdn.beer/@mamma/100100762616

フォロー

@mamma なるほど、パスが古い方を指してるんですね。centos7でしたらpg_ctlで直接起動せずに、systemctl start postgresql-9.6で起動しないでしょうか(スタートアップスクリプトもそうなっていました)

ログインして会話に参加
:realtek:

思考の /dev/null