Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save momoseijin/7a64b06cff4c2223b68618b708dc3b04 to your computer and use it in GitHub Desktop.
Save momoseijin/7a64b06cff4c2223b68618b708dc3b04 to your computer and use it in GitHub Desktop.
Upgrade PostgreSQL 11 to 12 , Mastodon on Ubuntu 16.04
#Mastodon を止める
systemctl stop mastodon-{web,sidekiq,streaming}.service
#クラスタを確認
pg_lsclusters
#下記のように 2 つの PostgreSQL が見えるはず
Ver Cluster Port Status Owner Data directory Log file
11 main 5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
12 main 5433 online postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
#このときは 12 の接続先が 5433 になっていて、まだ 11 が通常ポートの 5432 につながった状態
#次にインストール先の 12 を止めて、PostgreSQL もとめてアップグレード開始
sudo pg_dropcluster 12 main --stop
sudo service postgresql stop
sudo pg_upgradecluster 11 main
#何もエラーが出なければ DB の移行がはじまる。まあまあ時間かかる。(うちではエラーでなかったのでどんなエラー出るかはわかりません)
#終わったら再度確認
pg_lsclusters
#すると 12 のほうがポートが 5432 になっているはず
Ver Cluster Port Status Owner Data directory Log file
11 main 5433 down postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
12 main 5432 down postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
#PostgreSQL を再起動してバージョンが 12 になっているか確認
sudo service postgresql restart
psql --version
#11 を削除
sudo pg_dropcluster 11 main
#最後に Mastodon をリスタート
systemctl restart mastodon-{web,sidekiq,streaming}.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment