写点什么

YashanDB 参数配置

作者:YashanDB
  • 2025-03-11
    广东
  • 本文字数:2973 字

    阅读完需:约 10 分钟

本文内容来自 YashanDB 官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86/%E5%9F%BA%E6%9C%AC%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86/%E5%8F%82%E6%95%B0%E9%85%8D%E7%BD%AE.html


YashanDB 的所有系统参数都存在一个默认值,允许在产品安装后不做任何处理也能启动实例。默认值一般基于在个人 PC 也能运行的最小配置给出,可能并不适用于生产环境,因此建议在安装 YashanDB 时也进行参数的初始化配置工作。


参数的初始化通过在产品安装过程中配置安装参数完成。


需进行初始化配置的参数范围和值应结合企业的自身业务、资源环境来确定,同时,在调优手册数据库配置调优中所列出的性能相关参数应该重点关注。


若系统中使用了过时参数,启动时会产生运行日志告警但不影响启动,可根据配置参数中具体的参数描述和告警内容,判断该参数是否因改名而过时,并且是否需要将该过时参数调整为对应的新参数。若新参数未配置,则过时参数的配置值将自动转换为新参数值。


示例



2024-03-15 17:10:37.606 21615 [WARN] [PARAM] parameter BROADCAST_GTS_TIME is deprecated, it will obsolete in later version
复制代码


Copied!

参数自适应配置



数据库的参数配置直接影响性能表现,对参数值的初始化和后续调整依赖于专业的 DBA,为协助 DBA 快速决策和减少运维难度,YashanDB 提供参数自适应功能,依据环境信息给出针对当前负载的调参配置推荐。

# 基本原理

1.可在数据库 NOMOUNT、MOUNT 或 OPEN 状态下运行,区分 HEAP/TAC/LSC 不同表类型。


2.获取 CPU 核数、内存总数、空闲内存数等环境信息。


3.结合用户指定的 CPU 和内存限制,计算数据库可用的资源。


4.依据数据库可用资源计算内存相关参数。


5.测试数据文件和日志文件所在磁盘性能。


6.依据磁盘性能结果计算 IO 相关参数。

# 操作步骤

1.选择无业务运行的时间,并清理其他进程,避免干扰对资源的计算和测试。


2.运行参数配置推荐程序,该程序存在可输入的参数,请查看开发手册DBMS_PARAM详细了解后再操作。



EXEC DBMS_PARAM.OPTIMIZE();

EXEC DBMS_PARAM.OPTIMIZE(True, 'TAC', 80);

EXEC DBMS_PARAM.OPTIMIZE(NULL, NULL, 100, 100);

EXEC DBMS_PARAM.OPTIMIZE(NULL, 'LSC', NULL, NULL, '/home/yashan/data', '/home/yashan/redo');
复制代码


Copied!


3.查看最新的推荐参数信息。


SELECT DBMS_PARAM.SHOW_RECOMMEND() FROM dual;
复制代码


Copied!


4.将推荐的参数配置写入 yasdb.ini 文件,此过程并不会生效参数。


EXEC DBMS_PARAM.APPLY_RECOMMEND();
复制代码


Copied!


5.重启数据库,生效参数。

修改参数配置



在系统运行过程中,可能会由于应用变化、资源扩充、性能调优等需求,手工调整某个参数的值。此时应该根据参考手册配置参数文档里对该参数的描述,评估调整参数是否对在线业务造成影响,确定执行操作的合适时机。

# 使用 SQL 命令修改参数

# 命令格式

参考开发手册ALTER SYSTEMALTER SESSION文档说明。

# 参数说明

alter system 和 alter session 分别用于修改系统级别和会话级别的配置参数,而 alter session 修改方式默认只写到内存,对当前会话生效。


param_name 和 value 分别为配置参数名称和值,其中值需满足系统指定的取值范围,详见参考手册配置参数描述。


scope 用于设定对配置参数修改后的生效方式,默认为 both。


  • spfile:将参数值写入参数文件,需重启才能生效。

  • memory:将参数值写入内存,立即生效,但重启后失效。

  • both:将参数值同时写入内存和参数文件,立即生效,重启后也生效。


Note

  • 过时参数仍支持修改,并且修改时将在运行日志打印告警,告警内容同参数初始化配置示例内容。

  • 立即生效时,若为因改名而过时的参数且对应的新参数未配置,则过时参数修改后的值将自动转换为新参数值。

  • 重启生效的过时参数在修改后重启数据库时,运行日志也将打印告警,告警内容同上。

# 查看配置参数

修改后通过 show 命令或查询parameter相关参数视图来查看配置参数是否生效。


Note

过时参数仍支持查询,查询结果与正常参数区别在于查询parameter相关参数视图时过时参数的 IS_DEPRECATED 字段为 TRUE。


show parameter param_name;
复制代码


Copied!


示例




SHOW PARAMETER date_format;NAME VALUE
DATE_FORMAT yyyy-mm-dd
ALTER SYSTEM SET date_format='yyyy-mm-dd hh24:mi:ss' scope=spfile;

SHOW PARAMETER date_format;NAME VALUE
DATE_FORMAT yyyy-mm-dd hh24:mi:ss
SELECT name,value,default_value,is_deprecated FROM V$PARAMETER WHERE name = 'DATE_FORMAT';
NAME VALUE DEFAULT_VALUE IS_DEPRECATED
DATE_FORMAT yyyy-mm-dd hh24:mi:ss yyyy-mm-dd FALSE


SELECT name,value,default_value,is_deprecated FROM V$PARAMETER WHERE IS_DEPRECATED = TRUE;
NAME VALUE DEFAULT_VALUE IS_DEPRECATED
DIN_RECONNECT_TIME 5000 5000 TRUE CGROUP_FLAG 0 0 TRUE BROADCAST_GTS_TIME 16 5 TRUE
SELECT name,value,default_value,is_deprecated FROM V$PARAMETER WHERE name = 'BROADCAST_GTS_TIME';
NAME VALUE DEFAULT_VALUE IS_DEPRECATED
BROADCAST_GTS_TIME 16 5 TRUE
复制代码


Copied!


Note

  • 无法对只读参数执行 ALTER SYSTEM,只读参数只能在安装时进行配置或使用默认值。

  • 通常情况下,建议一直使用 SQL 命令修改配置参数,修改后的参数值将持久化到 yasdb.ini 配置文件,不建议直接编辑该配置文件。

  • 分布式部署中,上述命令将修改分布式集群中本地节点的对应配置,依据开发手册ALTER SYSTEM中 type 和 node 所描述内容可以实现多节点配置,但仍建议使用 YCM 图形化界面或者yasboot命令行方式来进行多节点统一的参数配置。

发布于: 刚刚阅读数: 4
用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
YashanDB参数配置_数据库_YashanDB_InfoQ写作社区