Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
PostgreSQL 9.2 upgrade steps
Steps to install and run PostgreSQL 9.2 using Homebrew (Mac OS X)
(if you aren't using version 9.1.5, change line 6 with the correct version)
1. pg_ctl -D /usr/local/var/postgres stop -s -m fast
2. mv /usr/local/var/postgres /usr/local/var/postgres91
3. curl https://raw.github.com/fragility/homebrew/737af01178590950749cf5e841f2d086c57c5a80/Library/Formula/postgresql.rb > /usr/local/Library/Formula/postgresql.rb
4. brew upgrade postgresql
5. initdb /usr/local/var/postgres -E utf8
6. pg_upgrade -b /usr/local/Cellar/postgresql/9.1.5/bin -B /usr/local/Cellar/postgresql/9.2.0/bin -d /usr/local/var/postgres91 -D /usr/local/var/postgres
7. pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
@swingman
Copy link

swingman commented Sep 11, 2012

Using launchctl to run PostgreSQL, so I suspect the postgres server will relaunch within a few seconds of executing line 1.
Line 1 becomes:
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Replace 7 with:
cp /usr/local/Cellar/postgresql/9.2.0/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

@swingman
Copy link

swingman commented Sep 12, 2012

When running my version, pg_upgrade refused to run claiming postmaster was still running, so I had to delete a stale postmaster.pid file inside the 9.1.5 directory.

@afair
Copy link

afair commented Sep 13, 2012

Remember it is always good to do a pg_dumpall before you start!

Also, I had a problem with pg_upgrade, it did not like that I had different lc_collate on each database setup, and did not run. I suspect that was due to the "-E utf8" option to initdb, which I may not have had before (but want now).

So I restored from the dump I took. :-)

@phil-monroe
Copy link

phil-monroe commented Oct 25, 2012

For postgres 9.2.1:

2. curl https://raw.github.com/fragility/homebrew/master/Library/Formula/postgresql.rb  > /usr/local/Library/Formula/postgresql.rb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment