Greenplum数据库初始化命令gpinitsystem和删除数据库命令gpdeletesystem

0    258    3

Tags:

👉 本文共约7270个字,系统预计阅读时间或需28分钟。

gpinitsystem

gpinitsystem使用gpinitsystem_config文件中指定的配置参数初始化一个Greenplum数据库系统。

命令

描述

gpinitsystem工具将使用配置文件中定义的值和客户提供的命令行选项 创建一个Greenplum数据库实例。 有关配置文件的更多信息,请参见初始配置文件格式。在 运行此工具之前,请确保已经在阵列中所有主机上安装了Greenplum数据库软件。

带有-O output_configuration_file选项时, gpinitsystem不会创建一个新数据库,而是把所有的配置都写入一个配置文件。 该文件使用QD_PRIMARY_ARRAY和 PRIMARY_ARRAY参数来定义每个成员相关的主机名、端口号、数据目录、Segment前缀、 Segment ID和Content ID。集群配置的详细信息可以根据需要修改,以匹配Greenplum数据库备份中的可用值, 活着可以简单的被用来重建相同集群配置。使用QD_PRIMARY_ARRAY和 PRIMARY_ARRAY的配置文件必须被传递给gpinitsystem -I input_configuration_file。 详细信息请见初始配置文件格式

在Greenplum数据库DBMS中,必须在系统中的所有主机上初始化每个数据库实例(Master和所有的Segment), 以便它们可以作为统一的DBMS一起使用。gpinitsystem工具负责初始化Greenplum的 Master和每个Segment实例,并作为一个整体配置系统。

在运行gpinitsystem之前,用户必须设置$GPHOME环境变量以 指向Master上的Greenplum数据库安装位置,并且使用gpssh-exkeys在阵列中的 所有主机地址之间交换SSH密钥。

这个工具执行以下任务:

  • 验证配置文件中参数的正确。
  • 确保可以建立到每个主机地址的连接。如果主机地址无法到达,该工具将退出。
  • 验证区域设置。
  • 显示将要使用的配置并提示用户进行确认。
  • 初始化Master实例。
  • 初始化后备Master实例(如果指定)。
  • 初始化主Segment实例。
  • 初始化镜像Segment实例(如果配置)。
  • 配置Greenplum数据库系统并检查错误。
  • 启动Greenplum数据库系统。

Note: 该工具在系统内部采用SSH连接执行各项操作任务。在大型Greenplum集群、云部署或每台主机部署了大量的 segment实例时,可能会遇到超过主机最大授权连接数限制的情况。此时需要考虑更新SSH配置参数MaxStartups 以提高该限制。更多关于SSH配置的选项,请参考您的Linux分发版的SSH文档。

选项

-a

不提示用户进行确认。

-B parallel_processes

要并行创建的Segment数。如果未指定,该工具一次最多启动4个并行进程。

-c cluster_configuration_file

必需。配置文件的完整路径和文件名称,其中包括所有已经定义的参数,用于配置和初始化新的 Greenplum数据库系统。有关此文件的说明,请参见初始配置文件格式初始化配置文件格式。gpinitsystem必须指定 -c cluster_configuration_file选项或 -I input_configuration_file 选项。

-D

设置日志输出等级为debug。

-h hostfile_gpinitsystem

可选。包含Segment主机地址的文件的完整路径和文件名。如果未在命令行中指定,则可以使用 gpinitsystem_config文件中的MACHINE_LIST_FILE 参数指定主机文件。

-I input_configuration_file

配置文件的全路径及文件名,该文件使用QD_PRIMARY_ARRAY和 PRIMARY_ARRAY参数定义Greenplum数据库成员和Segment实例。 该配置文件通常用gpinitsystem -O output_configuration_file生成。 gpinitsystem必须指定 -c cluster_configuration_file选项或 -I input_configuration_file 选项。

-n locale | —locale=locale

设置Greenplum数据库使用的默认区域。如果未指定,则Master主机的 LC_ALL、LC_COLLATE或 LANG环境变量决定区域。如果这些没有设置,则 默认的区域是C(POSIX)。 区域标识符由语言标识符、地区标识符和可选的字符集编码组成。例如, sv_SE是瑞典语,en_US是美国英语, fr_CA是加拿大法语。如果不止一个字符集可以用 于一个区域,则规范如下所示:en_US.UTF-8 (区域规范和字符集编码)。在大多数系统中,命令locale 将显示区域环境设置,locale -a将会显示所有可用的区域的列表。

--lc-collate=locale

类似于--locale,但是设置用于排序规则(排序数据)的区域。 Greenplum数据库初始化后无法更改排序顺序,因此有必要选择与用户计划用于数据的 字符集编码兼容的排序规则区域。C或POSIX 有一个特殊的排序规则名称(字节顺序排序而不是字典顺序排序)。C 排序规则可以用于任何字符编码。

--lc-ctype=locale

类似于--locale,但设置用于字符分类的语言环境 (哪些字符序列是有效的,以及它们如何被解释)。在Greenplum数据库初始化 之后,这是不能更改的,因此有必要选择一个与用户计划存储在Greenplum数据库 中的数据兼容的字符分类区域。

--lc-messages=locale

类似于--locale,但设置用于Greenplum数据库输出消息的语言环境。 当前版本的Greenplum数据库不支持输出消息的多种区域(所有消息均为英文),所以更改此 设置不会有任何效果。

--lc-monetary=locale

类似--locale,但是设置用于格式化货币金额的区域。

--lc-numeric=locale

类似--locale,但是设置用于格式化数字的区域。

--lc-time=locale

类似--locale,但设置用于格式化日期和时间的区域。

-l logfile_directory

写入日志文件的目录,默认为~/gpAdminLogs。

-m number | —max_connections=number

设置Master允许的最大客户端连接数。默认值是250。

-O output_configuration_file

当使用-O选项时,gpinitsystem不会创建一个 新的Greenplum集群,而是会将提供的集群配置信息写入指定的 When used with the option, does not create a new Greenplum Database cluster but instead writes the supplied cluster configuration information to the specified output_configuration_file文件。 该文件使用QD_PRIMARY_ARRAY和 PRIMARY_ARRAY参数来定义每个成员相关的主机名、端口号、数据目录、Segment前缀、 Segment ID和Content ID。集群配置的详细信息可以根据需要修改,以匹配Greenplum数据库备份中的可用值, 活着可以简单的被用来重建相同集群配置。使用QD_PRIMARY_ARRAY、 PRIMARY_ARRAY和MIRROR_ARRAY的配置文件必须被传递给 gpinitsystem -I input_configuration_file以初始化集群。

-p postgresql_conf_param_file

可选。包含用户想要为Greenplum数据库设置的postgresql.conf参数 设置的文件名称。这些设置将在初始化单个Master和Segment实例时使用。 用户也可以在 初始化后使用gpconfig工具来设置参数。

-q

以静默模式运行。命令行输出不显示在屏幕上,但仍然写入日志文件。

-b size | —shared_buffers=size

设置Greenplum服务器实例用于共享内存缓冲区的内存量。用户可以指定以千字节(KB)、 兆字节(MB)或千兆字节(GB)为单位的大小。默认值是125MB。

-s standby_master_host

可选。如果用户希望配置备份Master主机,请使用此选项指定主机名称。 Greenplum数据库 软件必须已经在该主机上安装和配置。

-P standby_master_port

如果使用-s配置了备用Master实例,可以用该选项定义端口号。 默认端口号与Master端口号相同。为了在同一主机上运行备用和主Master,必须使用该选项 指定一个不同的端口号。Greenplum数据库软件必须已经在备用主机上安装和配置好。

-S standby_master_datadir | —standby_dir=standby_master_datadir

如果使用-s配置备用Master主机,可以使用该选项指定数据目录。 如果在同一台主机上配置备用Master和主Master实例,那必须定义该选项以指定不同的目录。

-e superuser_password | —su_password=superuser_password

使用此选项可指定为Greenplum数据库超级用户帐户(例如gpadmin)设置的密码。 如果未指定此选项,则默认密码gparray会分配给超级用户。用户以后可以使用 ALTER ROLE命令更改密码。

推荐的最佳安全实践:

  • 不要生产环境中使用默认密码选项。
  • 安装之后立即更改密码。

--mirror_mode={group|spread}

使用该选项指定镜像Segment实例所在的镜像主机。默认采用group模式, 会将一台主机上的所有主Segment实例的镜像放到另外一台主机。 spread会将一台主机上的所有实例散布在另外的主机上。 spread仅在集群主机数量大于每台主机上的实例数量时可用。 有关Greenplum数据库镜像策略的详细信息,请见Segment镜像概述

-v | —version

显示gpinitsystem的版本。

-? | —help

显示gpinitsystem命令行参数,然后退出。

初始配置文件格式

gpinitsystem需要定义有以下参数的配置文件。示例初始化配置文件可以在 $GPHOME/docs/cli_help/gpconfigs/gpinitsystem_config中找到。

为了避免Greenplum数据库和其他应用程序之间的端口冲突,Greenplum数据库端口号不应该在操作系统 参数net.ipv4.ip_local_port_range指定的范围之内。例如,如果 net.ipv4.ip_local_port_range = 10000 65535,则可以将Greenplum 数据库基本端口号设置为以下这些值。

ARRAY_NAME

必需。用户正在配置的阵列的名称。用户可以使用任何用户喜欢的名字。 如果名称包含空格,请将名称放在引号中。

MACHINE_LIST_FILE

可选。可以用来替代-h选项。这指定包含构成Greenplum数据库系统 的Segment主机地址名称列表的文件。Master主机被假定为运行该工具的主机,并且不应该被包含在 此文件中。如果用户的Segment主机有多个网络接口,则该文件将包含该主机的所有地址。给出该文件 的绝对路径。

SEG_PREFIX

必需。这指定了一个前缀,用于命名Master和Segment实例上的数据目录。 Greenplum数据库系统中数据目录的命名约定是SEG_PREFIXnumber, 其中number对Segment实例从0开始(Master始终为-1)。因此, 如果用户选择前缀gpseg,则用户的Master实例数据目录将会被命名为 gpseg-1,并且Segment实例将被命名为gpseg0、 gpseg1、gpseg2、gpseg3等等。

PORT_BASE

必需。这指定计算主Segment端口用到的基础数字。主机上的第一个主Segment端口被设置为 PORT_BASE,然后对该主机上的每个额外主Segment都加一,有效值为1-65535。

DATA_DIRECTORY

必需。这指定工具将创建主Segment数据目录的数据存储位置。列表中的位置数量决定了 每台物理主机将创建的主Segment的数量(如果主机文件中列出了主机的多个地址,Segment的数量 将被均匀分布在指定的接口地址间)。如果用户希望在同一位置创建数据目录,则可以多次列出相同 的数据存储区域。运行gpinitsystem的用户(例如,gpadmin用户) 必须具有写入这些目录的权限。例如,这将为每台主机创建六个主Segment:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复