VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

配置运行参数

查看参数当前取值

Vastbase安装后,有一套默认的运行参数,为了使Vastbase与业务的配合度更高,用户需要根据业务场景和数据量的大小进行参数调整。

操作步骤

步骤1 使用如下命令,以操作系统用户vastbase登录数据库主节点。

vsql -d vastbase -p 5432

连接成功后,系统显示类似如下信息:

vsql ((Vastbase G100 V2.2 (Build 10) Alpha) compiled at 2022-08-15 21:50:21 commit 8730 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

vastbase=#

步骤2 查看数据库运行参数当前取值。

方法一:使用SHOW命令。

  • 使用如下命令查看单个参数:

    SHOW max_connections;
    

    max_connections显示数据库允许的最大连接数。

  • 使用如下命令查看所有参数,使用此命令输出结果较多,会分屏显示,可以按空格键查看下一页,按q退出当前内容查看:

    SHOW ALL;
    

方法二:使用pg_settings视图。

  • 使用如下命令查看单个参数:

    SELECT * FROM pg_settings WHERE NAME='max_connections';
    
  • 使用如下命令查看所有参数,使用此命令输出结果较多,会分屏显示,可以按空格键分页,按q退出当前内容查看:

    SELECT * FROM pg_settings;
    

配置参数

Vastbase提供了多种修改参数的方法,用户可以方便的针对数据库、用户、会话进行设置。

  • 参数名称不区分大小写。

  • 参数取值有整型、浮点型、字符串、布尔型和枚举型五类。

    • 布尔值可以是(on,off)、(true,false)、(yes,no)或者(1,0),且不区分大小写。

    • 枚举类型的取值是在系统表pg_settings的enumvals字段取值定义的。

  • 对于有单位的参数,在设置时请指定单位,否则将使用默认的单位。

    • 参数的默认单位在系统表pg_settings的unit字段定义的。

    • 内存单位有:KB(千字节)、MB(兆字节)和GB(吉字节)。

    • 时间单位:ms(毫秒)、s(秒)、min(分钟)、h(小时)和d(天)。

参数分类

Vastbase提供了六类参数,具体分类和设置方式请参考下表:

参数类型 说明 设置方式
INTERNAL 固定参数,在创建数据库的时候确定,用户无法修改,只能通过show语法或者pg_settings视图进行查看。
POSTMASTER 数据库服务端参数,在数据库启动时确定,可以通过配置文件指定。 支持参数设置中的方式一。
SIGHUP 数据库全局参数,可在数据库启动时设置或者在数据库启动后,发送指令重新加载。 支持参数设置中的方式一、方式二。
BACKEND 会话连接参数。在创建会话连接时指定,连接建立后无法修改。连接断掉后参数失效。内部使用参数,不推荐用户设置。

支持参数设置中的方式一、方式二。

说明:设置该参数后,下一次建立会话连接时生效。

SUSET 数据库管理员参数。可在数据库启动时、数据库启动后或者数据库管理员通过SQL进行设置。 支持参数设置中的方式一、方式二设置。
USERSET 普通用户参数。可被任何用户在任何时刻设置。 支持参数设置中的方式一、方式二设置。

参数设置

Vastbase提供了两种方式来修改参数,具体操作请参考下表:

序号 设置方法
方式一 编辑参数文件
手工编辑参数文件postgresql.conf修改参数值,如果没有该参数则手动添加,重启数据库使参数生效。
说明:
重启vastbase操作会导致用户执行操作中断,请在执行之前规划好合适的执行窗口。
vb_ctl stop&&vb_ctl srart
方式二 修改指定数据库,用户,会话级别的参数。
  • 设置数据库级别的参数,在下次会话中生效。
  • ALTER DATABASE dbname SET paraname TO value;
  • 设置用户级别的参数,在下次会话中生效。
  • ALTER USER username SET paraname TO value;
  • 设置会话级别的参数,修改本次会话中的取值。 退出会话后,设置将失效。
  • SET paraname TO value;

    操作步骤

    方式一: 设置数据库参数,以在数据库主节点设置archive_mode 参数为例。

    步骤1 以操作系统用户vastbase登录数据库主节点。

    vsql -d vastbase -p 5432
    

    步骤2 查看archive_mode参数。

    cat /vastbase/data/dbnode/postgresql.conf | grep archive_mode archive_mode = on
    


    on表示日志要进行归档操作。

    步骤3 设置archive_mode参数为off,直接编辑参数文件postgresql.conf,将参数设为off关闭日志的归档操作。

    archive_mode=off
    

    步骤4 重启数据库使参数生效。

    vb_ctl stop && vb_ctl start
    

    步骤5 检查参数设置的正确性。

    SHOW archive_mode;
    

    查询结果显示为:

    archive_mode
    --------------
    off
    (1 row)
    

    方式二: 设置参数,以设置explain_perf_mode参数为例。

    步骤1 以操作系统用户vastbase登录数据库主节点。

    vsql -d vastbase -p 5432
    

    连接成功后,系统显示类似如下信息:

    vsql ((Vastbase 2.2.0 build ) compiled at 2021-01-26 19:22:33 commit 0 last mr )
    Non-SSL connection (SSL connection is recommended when requiring high-security)
    Type "help" for help.
    
    vastbase=#
    

    步骤2 查看explain_perf_mode参数。

    SHOW explain_perf_mode;
    

    结果显示为:

    explain_perf_mode
    -------------------
    normal
    (1 row)
    

    步骤3 设置explain_perf_mode参数,使用以下任意方式进行置。

    • 设置数据库级别的参数。

      ALTER DATABASE vastbase SET explain_perf_mode TO pretty;
      

      当结果显示为如下信息,则表示设置成功,在下次会话中生效。

      ALTER DATABASE
      
    • 设置用户级别的参数。

      ALTER USER vuser SET explain_perf_mode TO pretty;
      

      当结果显示为如下信息,则表示设置成功,在下次会话中生效。

      ALTER ROLE
      
    • 设置会话级别的参数。

      SET explain_perf_mode TO pretty;
      

      当结果显示为如下信息,则表示设置成功。

      SET
      

    步骤4 检查参数设置的正确性。

    SHOW explain_perf_mode;
    

    结果显示为:

    explain_perf_mode
    --------------
    pretty
    (1 row)