• KingBase服务器参数配置(Kylin)


    主配置文件/KingbaseES/V8/data/kingbase.conf

    # 可通过find查找 [默认存储在database cluseter目录中]
    find / -name kingbase.conf
    
    • 1
    • 2

    辅助参数文件kingbase.auto.conf

    # 可通过find查找 [默认存储在database cluseter目录中]
    find / -name kingbase.auto.conf
    
    • 1
    • 2

    查看当前会话的参数值

    select * from sys_settings where name="参数"
    
    • 1

    sys_settings参数

    字段描述
    name运行时配置参数名
    setting参数当前值
    unit参数的隐式单位(8KB 16MB s min kb ms)
    category参数的逻辑分类
    short_dec参数的简短描述
    extra_desc附加参数的详细描述
    context要求设置此参数值的上下文
    min_val参数的最小允许值(仅非数字值有效)
    max_val参数的最大允许值(仅非数字值有效)
    enumvals一个枚举参数的允许值(仅非数字值有效)
    reset_val当前会话中,RESET将会设置的参数值
    sourcefile当前值所在配置文件 在配置文件中使用include指令时有用
    sourceline当前值在配置文件中的行号
    pending_restart参数修改后是否需要重启才能生效(t:重启 f:不需要重启)

    kingabase.conf全局修改参数

    1. 编辑kingbase.conf文件,修改相关参数的值
    2. 通过以下方法控制KES重新读取kingbase.conf文件并让参数修改值生效
      • 不需要重启的参数,修改完kingbase后需要执行sys_ctl reload重载
      • 需要重启的参数,在修改完kingbase后需要执行sys_ctl restart重启服务

    ALTER SYSTEM全局修改参数

    只会删除辅助参数文件中配置,不会删除主配置文件中配置

    语法说明
    ALTER SYSTEM SET parameter = value ;将某参数修改成某值(值为数字不需要引号)
    ALTER SYSTEM SET parameter = ‘value’;将某参数修改成某值(值为非数字需要引号)
    ALTER SYSTEM SET parameter T0 DEFAYLT;还原指定参数到初始值
    ALTER SYSTEM SET parameter;还原指定参数到初始值
    ALTER SYSTEM SET ALL;还原所有参数到初始值

    示例

    使用ALTER SYSTEM全局修改参数

    ksql test system  # 使用system用户登陆test数据库
    
    # 进入数据库对话
    show shared_buffers;  # 查看shared_buffers参数值
    alter system set shared_buffers='1024MB';  # 修改shared_buffers值
    show shared_buffers;  # 再次查看参数值
    cat /data/kingbase.auto.conf  # 查看辅助参数文件
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    # 查看主配置文件
    cat /data/kingbase.conf
    
    • 1
    • 2

    会话级别修改参数

    # 只在当前会话生效
    set work_mem='8MB';  # 在当前会话中修改
    
    • 1
    • 2

    在这里插入图片描述

    事务级别修改参数

    begin;  # 开启事务
    set local work_mem='8MB';  # 修改
    commit;  # 提交事务
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    限制参数在局部范围生效

    以下三种设置参数的方式,优先级分别为低、中、高,优先级递增

    为特定数据库的所有用户设置参数

    # 为test数据库所有连接设置work_mem为16mb [针对数据库覆盖其全局配置]
    ALTER DATABASE test SET work_mem='16MB';
    
    • 1
    • 2

    为数据库中的某个特定用户设置参数

    # 为system用户设置work_mem为32mb [为用户指定一个值来覆盖全局设置和数据库设置]
    ALTER USER system SET work_mem='16MB';
    
    • 1
    • 2

    为某个特定用户连接到特定的数据库设置参数

    # 为用户system在数据库test中设置work_mem为8mb 
    ALTER ROLE user01 IN DATABASE test SET work_mem='8MB';
    
    • 1
    • 2

    查看当前生效参数值的设置方式

    SELECT source FROM sys_settings WHERE name="work_mem";
    
    • 1
    • user:用户级别
    • database:数据库级别
    • database user:数据库级别和用户级别

    判断修改参数后需要重启还是重载

    查看配置文件中对应参数的备注

    grep ~port /data/kingbase.conf
    # restart:重启  reload:重载
    
    • 1
    • 2

    在这里插入图片描述

    通过pending_restart字段

    SELECT name,pending_restart FROM sys_settings WHERE name='port';
    # pending_restart = t  :修改参数后需要重启实例才能生效
    
    • 1
    • 2

    通过context字段

    SELECT name,context FROM sys_settings WHERE name='port';
    
    • 1

    在这里插入图片描述

    主辅参数配置文件区别

    文件默认内容不同

    • kingbase.conf文件创建成功之后,里面有kingbase依赖的默认配置文件参数,如最大连接数、共享缓存区等
    • kingbase.conf文件的内容默认为空

    文件修改方式不同

    • kingbase.conf中的内容只能使用文本编辑修改
    • kingbase.auto.conf中的内容可以有ALTER SYSTEM命令修改

    生效方式

    ​ 两个文件中的参数都需重启实例或重载参数生效

    主配置文件优先级低于辅助参数文件

    • 同一个参数在两个文件中都存在时,最终以kingbase.auto.conf中的设置为准
    • 使用alter system reset设置参数恢复到默认值,kingbase.auto.conf文件中的该参数配置会被删除,重新引用kingbase.conf文件中的参数设置
  • 相关阅读:
    GG-Net: 超声图像中乳腺病变分割的全局指导网络
    Go语言 String 简介
    学不会PDF裁剪与PDF拆分?6个方法包你轻松学会
    使用sklearn报AttributeError: ‘NoneType‘ object has no attribute ‘split‘
    浅析实施WMS仓储管理系统项目的几个要点
    甘露糖-聚乙二醇-叠氮,mannose-PEG-N3,叠氮-PEG-甘露糖
    【热门话题】Stable Diffusion:本地部署教程
    Linux 模块管理方法之 DKMS
    基于java学生选课系统
    x-pack的破解方式和免费jar包!!可直接用!!
  • 原文地址:https://blog.csdn.net/weixin_45564816/article/details/133923393