KingBase服务器参数配置(Kylin)

编程入门 行业动态 更新时间:2024-10-28 10:32:26

KingBase服务器<a href=https://www.elefans.com/category/jswz/34/1771441.html style=参数配置(Kylin)"/>

KingBase服务器参数配置(Kylin)

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

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

辅助参数文件kingbase.auto.conf

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

查看当前会话的参数值

select * from sys_settings where name="参数"

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  # 查看辅助参数文件

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

会话级别修改参数

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

事务级别修改参数

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

限制参数在局部范围生效

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

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

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

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

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

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

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

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

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

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

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

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

通过pending_restart字段

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

通过context字段

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

主辅参数配置文件区别

文件默认内容不同

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

文件修改方式不同

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

生效方式

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

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

  • 同一个参数在两个文件中都存在时,最终以kingbase.auto.conf中的设置为准
  • 使用alter system reset设置参数恢复到默认值,kingbase.auto.conf文件中的该参数配置会被删除,重新引用kingbase.conf文件中的参数设置

更多推荐

KingBase服务器参数配置(Kylin)

本文发布于:2023-12-05 18:00:48,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1664900.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:参数   服务器   KingBase   Kylin

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!