达梦8中的参数文件为dm.ini,该文件可以手动编辑,也可以在数据库中修改后自动同步,类似集成了oracle的pfile加spfile的功能。
查看参数可以使用v$dm_ini或v$parameter视图,其中可以查询到参数值、文件中的值、session中的值以及参数的类型,当然也可以使用DM8提供的函数包查询SF_GET_PARA_VALUE、SF_GET_PARA_DOUBLE_VALUE、SF_GET_PARA_STRING_VALUE。
SQL> select PARA_NAME,para_value,SESS_VALUE,FILE_VALUE,para_type from v$dm_ini where para_name='TIMER_TRIG_CHECK_INTERVAL';
行号 PARA_NAME PARA_VALUE SESS_VALUE FILE_VALUE PARA_TYPE
---------- ------------------------- ---------- ---------- ---------- ---------
1 TIMER_TRIG_CHECK_INTERVAL 60 60 60 SYS
在达梦8中参数可以分为以下几中类型:
1、READ ONLY:手动参数,表示服务器运行过程中不可修改;
2、IN FILE:静态参数,只可修改ini文件;
3、SYS和SESSION:动态参数,ini文件和内存同时可修改,其中,SYS系统级参数;
SQL> select distinct para_type from v$dm_ini;
行号 PARA_TYPE
---------- ---------
1 READ ONLY
2 SYS
3 IN FILE
4 SESSION
已用时间: 7.713(毫秒). 执行号:2016.
SQL>
静态:可以被动态修改,修改后重启服务器才能生效。
动态:可以被动态修改,修改后即时生效。动态参数又分为会话级和系统级两种。会话级参数被修改后,新参数值只会影响新创建的会话,之前创建的会话不受影响;系统级参数的修改则会影响所有的会话。
手动:不能被动态修改,必须手动修改dm.ini参数文件,然后重启才能生效。
一、修改参数的方法:
1、SP_SET_PARA_VALUE (scope int, paraname varchar(256), value int64)
该过程用于修改整型静态配置参数和动态配置参数。SCOPE参数为1表示在内存和INI文件中都修改参数值,此时只能修改动态的配置参数。参数为2表示只在INI文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数
2、SP_SET_PARA_DOUBLE_VALUE (scope int, paraname varchar(8187), value double)
该过程用于修改浮点型静态配置参数和动态配置参数。SCOPE参数为1表示在内存和INI文件中都修改参数值,此时只能修改动态的配置参数。参数为2表示只在INI文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数
3、SP_SET_PARA_STRING_VALUE()
该过程用于修改字符串型静态配置参数和动态配置参数。SCOPE参数为1表示在内存和INI文件中都修改参数值,此时只能修改动态的配置参数。参数为2表示只在INI文件中修改配置参数,此时可用来修改静态配置参数和动态配置参数
4、SF_SET_SYSTEM_PAR