10 配置Greenplum数据库
服务器配置参数影响Greenplum数据的行为。他们是PostgreSQL的“Grand Unified Configuration”系统的一部分,所以它们有时被称为“GUCs”。大多数Greenplum数据服务器的配置参数的相同PostgreSQL的配置参数,但也有一些Greenplum的特异性。
10.1 关于Greenplum的主节点和本地参数
服务器配置文件包含配置服务器行为参数。在Greenplum的数据库配置文件,postgresqi.conf,驻留在数据库实例的数据目录。
master和每段实例都有自己的postgresqi.conf文件。一些参数是地方:每段实例检查它的postgresqi.conf文件,以获取参数的值。在主并在每段实例设置本地参数。
其他参数,你在master实例设置主参数。该值向下传递给(或在某些情况下忽略)在查询运行时该段实例。
看到Greenplum数据参考指南有关本地和主服务器配置参数的信息。
10.2 设置配置参数
许多配置参数限制谁可以改变它们在哪里或当他们可以设置。例如,要改变某些参数,你必须是一个Greenplum数据引擎超级用户。其他参数只能在postgresqi.conf文件系统级设置或需要重新启动系统才能生效。
许多配置参数是会话参数。您可以在系统级别上设置会话参数,数据库级别,角色级别或会话级。数据库用户可以将其会话中改变大多数会话参数,但有些需要超级用户权限。
看到Greenplum数据参考指南有关设置服务器配置参数信息。
10.2.1设置本地参数
若要更改跨多个段的本地配置参数,在每个目标市场中的postgresql.conf文件更新参数,主区段和镜像段。使用gpconfig效用在所有的Greenplum postgresql.conf文件来设置的参数。 例如:
$gpconfig-c gp_vmem_protect_limit-v4096MB
重新启动Greenplum数据引擎,以使配置更改生效:
$ gpstop -r
10.2.2 设置主节点配置参数
要设置主配置参数,在Greenplum的主实例设置。如果它也是一个会话参数,可以设置一个特定的数据库,角色或会话参数。如果参数设置多层次的,最精细的级别优先。例如,session将覆盖role,角色将覆盖数据库和数据库覆盖系统。
10.2.2.1 在系统层面设置参数
主postgresql.conf文件主参数设置系统范围的默认值。要设置主参数:
1.编辑$ MASTER_DATA_DIRECTORY/postgresql.conf文件。
2.找到参数来设置,取消注释(删除前面的#字符),然后键入所需的值。
3.保存并关闭文件。
4.对于不需要重新启动服务器,上传在postgresql.conf变化如下会话参数:
$ gpstop -u
5.对于需要重新启动服务器,如下所示重启Greenplum数据引擎的参数变化:
$ gpstop –r
有关服务器配置参数的详细信息,请参阅Greenplum数据参考指南。
10.2.2.2 在数据库级别设置参数
使用ALTER DATABASE在数据库级别设置参数。例如:
=# ALTERDATABASE mydatabase SET search_path TO myschema;
当你在数据库级别设置会话参数,每一个连接到数据库会话使用该参数设置。在在系统级数据库级别覆盖的设置。
10.2.2.3 在角色级别设置参数
使用alter role在角色级别设置的参数。例如:
=# ALTER ROLE bob SET search_path TO bobschema;
当你在角色级别设置会话参数,该角色发起的每个会话使用该参数设置。在数据库级别角色级别覆盖的设置。
10.2.2.4 在会话设置参数
任何会话参数可以在活跃数据库会话使用SET命令来设置。例如:
=# SETstatement_mem TO '200MB';
参数设置是有效的该会话结束或直到发出复位命令。例如:
=# RESET statement_mem;
在会话级别的设置将覆盖那些角色级别。
10.3 查看服务器参数设置
SQL命令SHOW允许您查看当前服务器配置参数设置。例如,可查看所有参数的设置:
$ psql -c 'SHOW ALL;'
SHOW列出了只有主实例的设置。要查看整个系统(主机和所有段)的特定参数的值,使用gpconfig实用工具。 例如:
$ gpconfig--show MAX_CONNECTIONS
10.4 配置参数目录
配置参数影响服务器的行为,如资源消耗,查询优化和认证的类别。以下主题描述了Greenplum数据引擎配置参数类别。
有关配置参数类别的详情,请参阅Greenplum数据参考指南。
•配置参数分类
•系统资源消耗参数
•查询调整参数
•错误报告和记录参数
•系统监测参数
•运行时统计信息收集参数
•自动统计数据收集参数
•客户端连接默认参数
•锁定管理参数
•工作负荷管理参数
•外部表的参数
•数据库表参数
•数据库和表空间/文件空间参数
•过去PostgreSQL的版本兼容性参数
•Greenplum的阵列配置参数
•Greenplum的法师和段镜像参数
•Greenplum的数据库扩展参数
10.4.1 运行时统计信息收集参数
这些参数控制服务器统计数据收集功能。如果启用了统计信息收集,您可以访问使用pg_stat和系统目录视图pg_statio family统计数据。
stats_queue_level |
track_counts |
track_activities |
update_process_title |
10.4.2 自动统计数据收集参数
当启用自动统计数据收集,可以运行在同一个事务自动分析
作为一个INSERT,UPDATE,删除,复制或CREATE TABLE...当行的特定阈值的影响(on_change)AS SELECT语句,或者当一个新产生的表中没有统计(on_no_stats)。
要启用此功能,请在Greenplum的主postgresqi.conf文件中设置下面的服务器配置参数并重新启动Greenplum数据:
•gp_autostats_mode
•gp_autostats