Synopsis

Description

The gpmovemirrors utility moves mirror segment instances
to new locations. You may want to move mirrors to new locations to optimize
distribution or data storage.

Before moving segments, the utility verifies that they are mirrors,
and that their corresponding primary segments are up and are in synchronizing
or resynchronizing mode.

By default, the utility will prompt you for the file system location(s)
where it will move the mirror segment data directories.

You must make sure that the user who runs gpmovemirrors (the
gpadmin user) has permissions to write to the data directory locations
specified. You may want to create these directories on the segment hosts and
chown them to the appropriate user before running
gpmovemirrors.

Options

-B parallel_processes

The number of mirror segments to move in parallel. If not specified,
the utility will start up to 4 parallel processes depending on how many
mirror segment instances it needs to move.

-d master_data_directory

The master data directory. If not specified, the value set for $MASTER_DATA_DIRECTORY
will be used.

-i move_config_file

A configuration file containing information about which mirror segments
to move, and where to move them.

You must have one mirror segment listed for each primary segment in the system. Each line inside
the configuration file has the following format (as per attributes in the
gp_segment_configuration, pg_filespace, and
pg_filespace_entry catalog tables):

Note that you only need to specify a name for filespaceOrder if your system has
multiple filespaces configured. If your system does not have additional filespaces
configured besides the default pg_system filespace, this file will only
have one location (for the default data directory filespace,
pg_system). pg_system does not need to be listed in
the filespaceOrder line. It will always be the first
fselocation listed after replication_port.

-l logfile_directory

The directory to write the log file. Defaults to ~/gpAdminLogs.

-v (verbose)

Sets logging output to verbose.

--version (show utility version)

Displays the version of this utility.

-? (help)

Displays the online help.

Examples

Moves mirrors from an existing Greenplum Database system to a different
set of hosts:

$ gpmovemirrors -i move_config_file

Where the move_config_file looks something like this (if you do not have
additional filespaces configured besides the default pg_system
filespace):