Installs Greenplum Database extensions in .gppkg format, such as PL/Java, PL/R, PostGIS, and MADlib, along with their dependencies, across an entire cluster.


gppkg [-i <package> | -u <package> | -r  <name>-<version> | -c] 
        [-d <master_data_directory>] [-a] [-v]

gppkg --migrate <GPHOME_old> <GPHOME_new> [-a] [-v]

gppkg [-q | --query] <query_option>

gppkg -? | --help | -h 

gppkg --version


The Greenplum Package Manager (gppkg) utility installs Greenplum Database extensions, along with any dependencies, on all hosts across a cluster. It will also automatically install extensions on new hosts in the case of system expansion and segment recovery.

Note: After a major upgrade to Greenplum Database, you must download and install all gppkg extensions again.

Examples of database extensions and packages software that are delivered using the Greenplum Package Manager are:

  • PL/Java
  • PL/R
  • PostGIS
  • MADlib


-a (do not prompt)
Do not prompt the user for confirmation.
-c | –clean
Reconciles the package state of the cluster to match the state of the master host. Running this option after a failed or partial install/uninstall ensures that the package installation state is consistent across the cluster.
-d master_data_directory
The master data directory. If not specified, the value set for $MASTER_DATA_DIRECTORY will be used.
-i package | –install=package
Installs the given package. This includes any pre/post installation steps and installation of any dependencies.
–migrate GPHOME_old GPHOME_new
Migrates packages from a separate $GPHOME. Carries over packages from one version of Greenplum Database to another.

For example: gppkg --migrate /usr/local/greenplum-db-<old-version> /usr/local/greenplum-db-<new-version>

When migrating packages, these requirements must be met.

  • At least the master instance of the destination Greenplum Database must be started (the instance installed in GPHOME_new). Before running the gppkg command start the Greenplum Database master with the command gpstart -m.
  • Run the gppkg utility from the GPHOME_new installation. The migration destination installation directory.
-q | –query query_option
Provides information specified by query_option about the installed packages. Only one query_option can be specified at a time. The following table lists the possible values for query_option. <package_file> is the name of a package.
query_option Returns
<package_file> Whether the specified package is installed.
--info <package_file> The name, version, and other information about the specified package.
--list <package_file> The file contents of the specified package.
--all List of all installed packages.
-r name-version | –remove=name-version
Removes the specified package.
-u package | –update=package
Updates the given package.

Warning: The process of updating a package includes removing all previous versions of the system objects related to the package. For example, previous versions of shared libraries are removed. After the update process, a database function will fail when it is called if the function references a package file that has been removed.

–version (show utility version)

Displays the version of this utility.
-v | –verbose
Sets the logging level to verbose.
-? | -h | –help
Displays the online help.
check-circle-line exclamation-circle-line close-line
Scroll to top icon