DM 修改dm.ini 参数

DM 修改dm.ini 参数

DM 数据库修改dm.ini 参数,除了直接修改dm.ini 文件中的参数值重启数据库使参数生效,还可以通过 sp_set_para_value(1/2, '参数名',value) 函数(其中1 表示修改动态参数,2 表示修改静态参数),或与oracle 类似的 alter system set '参数名'=value memory/spfile/both(其中memory 是只修改内存值,spfile 是只修改ini 文件值,both 是都修改),两种方式来修改dm.ini 参数值。 dm.ini 中的参数有四种类型,read only 只读参数,sys 系统级参数,in file 静态参数,session 会话级参数。

复制代码
SQL> select distinct(para_type) from v$dm_ini;

PARA_TYPE
---------
READ ONLY
SYS
IN FILE
SESSION

其中,sys 和session 是动态参数,无需重启直接生效,sys 对整个数据库生效,session 只对新建的会话生效;read only 是静态参数,修改后需重启数据库生效;in file 参数只能手动修改dm.ini 文件,重启数据库生效。

参数修改方法

1.动态参数

以参数SORT_BUF_SIZE 为例

复制代码
SQL> select * from v$dm_ini where para_name = 'SORT_BUF_SIZE';

PARA_NAME     PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                           PARA_TYPE SYNC_FLAG SYNC_                               LEVEL PARA_MODULE
------------- ---------- --------- --------- ------------- ------- ---------- ---------- ------------------------------------- --------- --------- -----                               ----- ----------------------
SORT_BUF_SIZE 20         1         2048      20            N       20         20         maximum sort buffer size in Megabytes SESSION   ALL_SYNC  CAN_S                               YNC   memory pool and buffer

1.1 sp_set_para_value方法

sql语句:

复制代码
sp_set_para_value(1, 'SORT_BUF_SIZE',30);

修改后立即生效

复制代码
SQL> sp_set_para_value(1, 'SORT_BUF_SIZE',30);
DMSQL 过程已成功完成
已用时间: 211.281(毫秒). 执行号:1607.
SQL> select * from v$dm_ini where para_name = 'SORT_BUF_SIZE';

PARA_NAME     PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                           PARA_TYPE SYNC_FLAG SYNC_LEVEL PARA_MODULE
------------- ---------- --------- --------- ------------- ------- ---------- ---------- ------------------------------------- --------- --------- ---------- ----------------------
SORT_BUF_SIZE 30         1         2048      20            N       30         30         maximum sort buffer size in Megabytes SESSION   ALL_SYNC  CAN_SYNC   memory pool and buffer

1.2 alter system方法

语句:

复制代码
SQL> alter system set 'SORT_BUF_SIZE'=30 both;

2.静态参数

以参数MAX_OS_MEMORY 为例

复制代码
SQL> select * from v$dm_ini where para_name = 'MAX_OS_MEMORY';

PARA_NAME     PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                               PARA_TYPE SYNC_FLAG SYNC_LEVEL PARA_MODULE          
------------- ---------- --------- --------- ------------- ------- ---------- ---------- ----------------------------------------- --------- --------- ---------- ----------------------
MAX_OS_MEMORY 100        40        100       100           N       100        100        Maximum Percent of OS Memory Can Be Used  IN FILE   ALL_SYNC  CAN_SYNC   memory pool and buffer

2.1 sp_set_para_value方法

sql语句:

复制代码
SQL> sp_set_para_value(2, 'MAX_OS_MEMORY',90);

需要重启数据库生效

复制代码
SQL>  sp_set_para_value(2, 'MAX_OS_MEMORY',90);
DMSQL 过程已成功完成
已用时间: 47.176(毫秒). 执行号:1611.

SQL> select * from v$dm_ini where para_name = 'MAX_OS_MEMORY';

PARA_NAME     PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                               PARA_TYPE SYNC_FLAG SYNC_LEVEL PARA_MODULE          
------------- ---------- --------- --------- ------------- ------- ---------- ---------- ----------------------------------------- --------- --------- ---------- ----------------------
MAX_OS_MEMORY 100        40        100       100           N       100        90         Maximum Percent of OS Memory Can Be Used  IN FILE   ALL_SYNC  CAN_SYNC   memory pool and buffer

已用时间: 6.117(毫秒). 执行号:1612.

SQL> host /dm/dmdbms/bin/DmServiceDAMENG restart
Stopping DmServiceDAMENG:                                  [ OK ]
Starting DmServiceDAMENG:                                    [ OK ]

SQL> select * from v$dm_ini where para_name = 'MAX_OS_MEMORY';

服务器[LOCALHOST:5236]:处于普通打开状态
已连接

PARA_NAME     PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                               PARA_TYPE SYNC_FLAG SYNC_LEVEL PARA_MODULE          
------------- ---------- --------- --------- ------------- ------- ---------- ---------- ----------------------------------------- --------- --------- ---------- ----------------------
MAX_OS_MEMORY 90         40        100       100           N       90         90         Maximum Percent of OS Memory Can Be Used  IN FILE   ALL_SYNC  CAN_SYNC   memory pool and buffer

2.2 alter system方法

语句:

复制代码
SQL> alter system set 'MAX_OS_MEMORY'=90 spfile;

欢迎访问达梦技术分享社区 ECO

https://eco.dameng.com

相关推荐
liwenzhen200518 小时前
DM 使用DBMS_SQLTUNE 系统包查看SQL 执行计划
执行计划·dm·dbms_sqltune
liwenzhen20052 天前
DM 行级锁
行级锁·dm
liwenzhen20053 天前
DM 配置 unixODBC
odbc·dm
liwenzhen200517 天前
DM 常用 HINT 参考
dm·hint
liwenzhen200517 天前
DM SQL 排序优化
dm·sql 排序优化
liwenzhen200517 天前
DMDRS 配置
dm·drs
liwenzhen200517 天前
DM SQL 查看执行计划
explain·执行计划·et·dm
liwenzhen200517 天前
Linux 环境编译安装 dmPython
dmpython·dm
17 天前
达梦数据库—锁
数据库·达梦数据库·dm