达梦数据库DM设置ini参数的几种方式
达梦数据库(DM)——设置ini参数的几种方式
在达梦数据库中,数据库参数ini可以通过两种方式来进行设置,下面一一介绍。
一、直接修改dm.ini的配置文件
达梦数据库的系统参数存放在dm.ini的配置文件中,默认是在对应数据库的实例路径中。可以直接通过编辑器打开dm.ini文件直接进行修改。需要注意的是,该方式修改一定要重启数据库服务,这样才能生效。
二、函数修改ini参数
对于整型、浮点型和系统(整型、double、varchar)参数提供了三种函数。
- SP_SET_PARA_VALUE (scope int, paraname varchar(256), value int64)
该过程用于修改整型静态配置参数和动态配置参数。SCOPE参数为1表示在内存和INI文件中都修改参数值,此时只能修改动态的配置参数。参数为 2 表示只在 INI 文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数。当 SCOPE 等于 1,试图修改静态配置参数时服务器会返回错误信息。只有具有 DBA 角色的用户才有权限调用SP_SET_PARA_VALUE。
- SP_SET_PARA_DOUBLE_VALUE (scope int, paraname varchar(8187), value double)
该过程用于修改浮点型静态配置参数和动态配置参数。SCOPE 参数为 1 表示在内存和INI 文件中都修改参数值,此时只能修改动态的配置参数。参数为 2 表示只在 INI 文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数。当 SCOPE 等于 1,试图修改静态配置参数时服务器会返回错误信息。只有具有 DBA 角色的用户才有权限调用SP_SET_PARA_DOUBLE_VALUE。
- SF_SET_SYSTEM_PARA_VALUE (paraname varchar(256), value int64\double\varchar(256), deferred int, scope int64)
该过程用于修改系统整型、double、varchar 的静态配置参数或动态配置参数。DEFERRED 参数,为 0 表示当前 session 修改的参数立即生效,为 1 表示当前 session不生效,后续再生效,默认为 0。SCOPE 参数为 1 表示在内存和 INI 文件中都修改参数值,此时只能修改动态的配置参数。参数为 2 表示只在 INI 文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数 。 只有具有 DBA 角色的用户才有权限调用SF_SET_SYSTEM_PARA_VALUE。
案例:以设置MAX_SESSIONS连接数的参数为例。从手册中得知该参数是静态参数,所以只能修改ini文件中的值。
SP_SET_PARA_VALUE (2, 'MAX_SESSIONS',2000);
总共1个语句正依次执行...
[执行语句1]:
SP_SET_PARA_VALUE (2, 'MAX_SESSIONS',2000);
执行成功, 执行耗时60毫秒. 执行号:705
影响了0条记录
1条语句执行成功
因为是静态参数,修改后直接查询SELECT SF_GET_PARA_VALUE (1, ‘MAX_SESSIONS’)仍为旧值,重新启动数据库服务后,再次查询为新值。
更多资讯请上达梦技术社区了解: