> ## Content Index
> Fetch the complete content index at: https://ostreff.info/llms.txt
> Use this file to discover other available public pages before exploring further.

# Upgrade to PostgreSQL 18.0
- URL: https://ostreff.info/upgrade-to-postgresql-18/
- Published: 2025-10-06T20:14:51.000Z
- Updated: 2025-10-06T20:24:41.000Z
- Description: quick upgrade procedure
- Author: Jordan Ostreff
- Tags: FreeBSD, PostgreSQL

The [postgresql 1](https://www.postgresql.org/about/news/postgresql-18-released-3142/?ref=ostreff.info)[8](https://www.postgresql.org/about/news/postgresql-18-released-3142/?ref=ostreff.info) was released. So here is quick manual to upgrade to latest version from 17.6.

```bash
pkg create postgresql17-server 
mkdir /tmp/pg-upgrade
tar xf postgresql17-server-17.6.pkg -C /tmp/pg-upgrade
pkg delete -f databases/postgresql17-server  databases/postgresql17-client
portmaster databases/postgresql18-server databases/postgresql18-client

su -l postgres -c "/usr/local/bin/initdb --encoding=utf-8 --lc-collate=C -D /var/db/postgres/data18 -U postgres"
su -l postgres -c "/tmp/pg-upgrade/usr/local/bin/pg_checksums --pgdata=/var/db/postgres/data17/ --enable --progress --verbose"
su -l postgres -c "pg_upgrade -b /tmp/pg-upgrade/usr/local/bin/ -d /var/db/postgres/data17/ -B /usr/local/bin/ -D /var/db/postgres/data18/ -U postgres"
service postgresql start
/usr/local/bin/vacuumdb -U postgres --all --analyze-in-stages
/var/db/postgres/delete_old_cluster.sh
```

Don't forget to check and rebuild all ports with dependency to `postgresql-client`

Full manual for general upgrades comes from [here](https://ostreff.info/upgrade-postgresql-on-freebsd/).