Ubuntu 22.04のPostgresql 13を14へバージョンアップする

提供:FirstWiki
ナビゲーションに移動 検索に移動

アップグレード前の状態

$ sudo pg_lsclusters 
Ver Cluster Port Status Owner    Data directory              Log file
13  main    5432 online postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log
14  main    5433 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log
  • Ver 13, Port 5432 - アップグレード前からあるデータ
  • Ver 14, Port 5433 - Ubuntuのアップグレードで作成されたデータ

Ubuntu のアップグレード時に作成されたクラスターを削除する

$ sudo pg_dropcluster 14 main --stop

$ sudo pg_lsclusters 
Ver Cluster Port Status Owner    Data directory              Log file
13  main    5432 online postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log

アップグレードする

$ sudo pg_upgradecluster 13 main

Success. Please check that the upgraded cluster works. If it does,
you can remove the old cluster with
    pg_dropcluster 13 main

Ver Cluster Port Status Owner    Data directory              Log file
13  main    5433 down   postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log
Ver Cluster Port Status Owner    Data directory              Log file
14  main    5432 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log

アップグレードが完了すると

  • 旧バージョンのデータベースはポート 5433 で停止状態
  • 新バージョンがポート 5432 で動作中

旧バージョンの削除

新バージョンの動作が確認できたら以下のように旧バージョンを取り除く

$ sudo pg_dropcluster 13 main
$ sudo pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
14  main    5432 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log

旧パッケージも削除できる

$ sudo apt purge postgresql-12 postgresql-client-13