Invoking pg_upgrade v17
When invoking pg_upgrade
, you must specify the location of the old and new cluster's PGDATA
and executable (/bin
) directories, the name of the EDB Postgres Advanced Server superuser, and the ports on which the installations are listening. A typical call to invoke pg_upgrade
to migrate from EDB Postgres Advanced Server 16 to EDB Postgres Advanced Server 17 takes the form:
Where:
--old-datadir path_to_16_data_directory
Use the --old-datadir
option to specify the complete path to the data
directory in the EDB Postgres Advanced Server 16 installation.
--new-datadir path_to_17_data_directory
Use the --new-datadir
option to specify the complete path to the data
directory in the EDB Postgres Advanced Server 17 installation.
--username superuser_name
Include the --username
option to specify the name of the EDB Postgres Advanced Server superuser. The superuser name must be the same in both versions of EDB Postgres Advanced Server. By default, when EDB Postgres Advanced Server is installed in Oracle mode, the superuser is named enterprisedb
. If installed in PostgreSQL mode, the superuser is named postgres
.
If the EDB Postgres Advanced Server superuser name isn't the same in both clusters, the clusters won't pass the pg_upgrade
consistency check.
--old-bindir path_to_16_bin_directory
Use the --old-bindir
option to specify the complete path to the bin
directory in the EDB Postgres Advanced Server 16 installation.
--new-bindir path_to_17_bin_directory
Use the --new-bindir
option to specify the complete path to the bin
directory in the EDB Postgres Advanced Server 17 installation.
--old-port 16_port
Include the --old-port
option to specify the port on which EDB Postgres Advanced Server 16 listens for connections.
--new-port 17_port
Include the --new-port
option to specify the port on which EDB Postgres Advanced Server 17 listens for connections.
command_line_options_reference