gpstop
停止或者重启Greenplum数据库系统。
概要
gpstop [-d master_data_directory] [-B parallel_processes]
[-M smart | fast | immediate] [-t timeout_seconds] [-r] [-y] [-a]
[-l logfile_directory] [-v | -q]
gpstop -m [-d master_data_directory] [-y] [-l logfile_directory] [-v | -q]
gpstop -u [-d master_data_directory] [-l logfile_directory] [-v | -q]
gpstop --host host_name [-d master_data_directory] [-l logfile_directory]
[-t timeout_seconds] [-a] [-v | -q]
gpstop --version
gpstop -? | -h | --help
描述
gpstop工具用于停止构成Greenplum数据库系统的数据库服务器。当用户停止一个 Greenplum数据库系统时,用户实际上是一次停止几个postgres数据库服务器进程 (Master和所有的Segment实例)。gpstop工具处理个别实例的关闭。每个实例 被并行地关闭。
默认情况下,如果有任何客户端连接到数据库,则不允许关闭Greenplum数据库。使用-M fast 选项来回滚所有正在进行的事务,并在关闭之前终止所有连接。如果有任何事务正在进行,则默认行为是 在关闭之前等待它们提交。
使用-u选项时, 该工具会上传对主pg_hba.conf文件所做的更改, 或者在postgresql.conf文件中将运行时配置参数上载到服务中。请注意, 任何活动的会话在重新连接到数据库之前都不会获取更改。
选项
-a
不要提示用户确认。
-B parallel_processes
并行停止的Segment数。如果未指定,则工具将启动最多64个并行进程,具体取决于需要停止 多少个Segment实例。
-d master_data_directory
可选。Master主机的数据目录。如果未指定,则使用为$MASTER_DATA_DIRECTORY 设置的值。
--host host_name
The utility shuts down the Greenplum Database segment instances on the specified host to allow maintenance on the host. Each primary segment instance on the host is shut down and the associated mirror segment instance is promoted to a primary segment if the mirror segment is on another host. Mirror segment instances on the host are shut down.
The segment instances are not shut down and the utility returns an error in these cases:
- Segment mirroring is not enabled for the system.
- The master or standby master is on the host.
- Both a primary segment instance and its mirror are on the host.
This option cannot be specified with the -m, -r, -u, or -y options.
Note: The gprecoverseg utility restores segment instances. Run gprecoverseg commands to start the segments as mirrors and then to return the segments to their preferred role (primary segments).
-l logfile_directory
写入日志文件的目录。默认为~/gpAdminLogs。
-m
可选。关闭在维护模式下启动的Greenplum主实例。
-M fast
快速关闭。任何正在进行的事务都会中断并回滚。
-M immediate
立即关闭。任何正在进行的事务都会中止。
该模式杀死所有postgres进程,而不允许数据库服务器完成事务处理 或清理任何临时或进程内工作文件。
-M smart
智能关闭。如果存在活动连接,则此命令将失败并显示警告。这是默认的关闭模式。
-q
以静默模式运行。命令输出不显示在屏幕上,但仍然写入日志文件。
-r
关机完成后重新启动。
-t timeout_seconds
指定等待Segment实例关闭的超时阈值(以秒为单位)。如果Segment实例没有在指定的秒数内关闭, gpstop将显示一条消息,指示一个或多个Segment仍处于关闭过程中,并且 直到Segment实例停止后才能重新启动Greenplum数据库。这个选项在gpstop 被执行且有非常大的事务需要回滚的情况下非常有用。这些大型事务可能需要一分钟才能回滚,并超过 600秒的默认超时时间。
-u
此选项将重新加载Master和Segment的pg_hba.conf文件以及 postgresql.conf文件的运行时参数,但不会关闭数据库阵列。 编辑postgresql.conf或pg_hba.conf 之后,使用此选项可使新的配置设置处于活动状态。请注意,这仅适用于设计为运行时 的配置参数。
-v
显示工具输出的详细状态,进度和错误消息。
-y
不要停止后备Master进程。默认是停止后备Master。
-? | -h | —help
显示在线帮助。
--version
显示工具的版本。
示例
在智能模式下关闭Greenplum数据库系统:
gpstop
在快速模式下关闭Greenplum数据库系统:
gpstop -M fast
停止所有的Segment实例,然后重新启动系统:
gpstop -r
停止在维护模式下启动的Master实例:
gpstop -m
在进行配置更改后重新加载postgresql.conf和pg_hba.conf 文件,但不要关闭Greenplum数据库阵列:
gpstop -u