这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

配置参数管理

Vertica 支持一系列影响数据库多个方面行为的配置参数。通过在一个或多个级别使用适当的 ALTER 语句,可以设置这些参数。以下按优先级降序对其进行排列:

  1. 用户 (ALTER USER)

  2. 会话 (ALTER SESSION)

  3. 节点 (ALTER NODE)

  4. 数据库 (ALTER DATABASE)

您可以查询系统表 CONFIGURATION_PARAMETERS,获取所有用户可访问参数的当前设置。例如,以下查询获取分区参数的设置:它们的当前值和默认值、可以设置的级别,以及更改后是否需要重新启动数据库才能生效:

=> SELECT parameter_name, current_value, default_value, allowed_levels, change_requires_restart FROM configuration_parameters
     WHERE parameter_name ILIKE '%partition%';
           parameter_name           | current_value | default_value | allowed_levels | change_requires_restart
------------------------------------+---------------+---------------+----------------+-------------------------
 MaxPartitionCount                  | 1024          | 1024          | NODE, DATABASE | f
 PartitionSortBufferSize            | 67108864      | 67108864      | DATABASE       | f
 DisableAutopartition               | 0             | 0             | SESSION, USER  | f
 PatternMatchingMaxPartitionMatches | 3932160       | 3932160       | NODE, DATABASE | f
 PatternMatchingMaxPartition        | 20971520      | 20971520      | NODE, DATABASE | f
 ActivePartitionCount               | 1             | 1             | NODE, DATABASE | f
(6 rows)

有关按类别分组的各个配置参数的详细信息,请参阅配置参数

设置和清除配置参数

您可以使用适当的 ALTER 语句更改特定的配置参数。这些语句还允许您将配置参数重置为其默认值。例如,以下 ALTER 语句将数据库级别的 ActivePartitionCount 从 1 更改为 2,将会话级别的 DisablePartitionCount 从 0 更改为 1:

=> ALTER DATABASE DEFAULT SET ActivePartitionCount = 2;
ALTER DATABASE
=> ALTER SESSION SET DisableAutopartition = 1;
ALTER SESSION
=> SELECT parameter_name, current_value, default_value FROM configuration_parameters
      WHERE parameter_name IN ('ActivePartitionCount', 'DisableAutopartition');
    parameter_name    | current_value | default_value
----------------------+---------------+---------------
 ActivePartitionCount | 2             | 1
 DisableAutopartition | 1             | 0
(2 rows)

您可以稍后将这些配置参数重置为默认值:

=> ALTER DATABASE DEFAULT CLEAR ActivePartitionCount;
ALTER DATABASE
=> ALTER SESSION CLEAR DisableAutopartition;
ALTER DATABASE
=> SELECT parameter_name, current_value, default_value FROM configuration_parameters
      WHERE parameter_name IN ('ActivePartitionCount', 'DisableAutopartition');
    parameter_name    | current_value | default_value
----------------------+---------------+---------------
 DisableAutopartition | 0             | 0
 ActivePartitionCount | 1             | 1
(2 rows)

1 - 查看配置参数值

您可以通过两种方式来查看有效的配置参数值:

SHOW 语句

使用以下 SHOW 语句查看有效的配置参数:

  • SHOW CURRENT:返回有效配置参数值的设置。Vertica 按以下优先级升序检查所有级别的设置:

    • 会话

    • 节点

    • 数据库

    如果任何范围内均未设置任何值,则 SHOW CURRENT 将返回参数的默认值。

  • SHOW DATABASE:显示为数据库设置的配置参数值。

  • SHOW USER:显示为指定用户和所有用户设置的配置参数。

  • SHOW SESSION:显示为当前会话设置的配置参数值。

  • SHOW NODE:显示为节点设置的配置参数值。

如果配置参数需要重新启动才能生效,SHOW CURRENT 语句中的值可能与 SHOW 语句中的值有所不同。要查看哪些参数需要重新启动,请查询 CONFIGURATION_PARAMETERS 系统表。

系统表

您可以在多个系统表中查询配置参数。