のんびりSEの議事録

プログラミング系のポストからアプリに関してのポストなどをしていきます。まれにアニメ・マンガなど

macでPostgreSQLをアップデートする

久しぶりにPostgreSQLを利用してアプリを作成しようとしてたのですが、前にアップデートをしたことを忘れていて、起動できなかったので、macでhomebrewでインストールしたPostgreSQLをアップデートをするやり方を残しておきます。

データベースクラスタのバージョンを確認

$ cat /usr/local/var/postgres/PG_VERSION

PostgreSQLのアップデート

$ brew update && brew upgrade postgres

既存でサービスが起動していたら停止させておく

$ brew services stop postgresql

新しいバージョン用のデータベースクラスタ作成

$ initdb /usr/local/var/postgres9.6.1 -E utf8

homebrewでインストールしたPostgreSQLのバージョンを確認

$ ls -la /usr/local/Cellar/postgresql/

pg_upgradeコマンド実行

$ pg_upgrade \
  -d /usr/local/var/postgres \
  -D /usr/local/var/postgres9.6.1 \
  -b /usr/local/Cellar/postgresql/9.4.1/bin/ \
  -B /usr/local/Cellar/postgresql/9.6.1/bin/ \
  -v

古いバージョンのデータベースクラスタを新しいバージョンに切り替える

$ mv /usr/local/var/postgres /usr/local/var/postgres-9.4.1
$ mv /usr/local/var/postgres9.6.1 /usr/local/var/postgres

PostgreSQLの起動、確認

$ brew services start postgres
$ psql -l

参考

collectiveidea.com