DM达梦数据库开启SQL日志记录功能
DM达梦数据库开启SQL日志记录功能
配置SQL日志(非必须的配置步骤,与主备集群配置无关,如果没有需求可以跳过配置SQL日志)
sqllog.ini 配置文件用于SQL日志的配置,当且仅当 INI 参数 SVR_LOG = 1 时使用。SQL日志主要用于慢SQL定位等分析跟踪用途。
sqllog.ini 主要配置参数:
SVR_LOG:系统级别配置参数,是否打开SQL日志功能。
0 表示关闭;
1 表示打开;
2 表示按文件中记录数量切换日志文件,日志记录为详细模式;
3 表示不切换日志文件,日志记录为简单模式,只记录时间和原始语句。
SVR_LOG_NAME:系统级别配置参数,使用 sqllog.ini 中预设的模式的名称。
所有节点修改 sqllog.ini
vi /opt/dm/dmdbms/data/testdb/sqllog.ini
BUF_TOTAL_SIZE = 10240
BUF_SIZE = 1024
BUF_KEEP_CNT = 6
[SLOG_ALL]
FILE_PATH = ../log
PART_STOR = 1 #SQL日志分区存储配置参数,0 表示不划分;1 表示 USER,根据不同用户分布存储
SWITCH_MODE = 2 #日志文件切换模式 2 表示按文件大小切换
SWITCH_LIMIT = 512 #文件大小限制
ASYNC_FLUSH = 1 #日志刷盘模式,默认1异步刷盘,0表示实时刷盘
FILE_NUM = 20 #打印日志文件个数,默认5个,建议配置20
ITEMS = 0 #记录SQL全部内容信息,默认 0
SQL_TRACE_MASK = 1 #打印全部类型SQL日志,默认 1
MIN_EXEC_TIME = 1500 #详细模式下,记录的最小语句执行时间,单位毫秒
USER_MODE = 0 #SQL日志按用户过滤时的过滤模式,0 表示关闭用户过滤
USERS = #打开 SVR_LOG_USER_MODE 时指定的用户列表。格式为:用户名:用户名:用户名
重启数据库才能生效。
另外也可以在线动态修改参数的方式打开、无需重启数据库、修改立即生效:
修改动态参数开启SQL日志记录功能:
disql SYSDBA/'"password"'@localhost:5236
call SP_SET_PARA_VALUE(1,'SVR_LOG',1);
查询日志记录功能是否开启(0 表示关闭;1/2/3 表示开启):
-- 修改配置(打开)
SP_SET_PARA_VALUE(1,'SVR_LOG',1);
或者(按需)
SP_SET_PARA_VALUE(1,'SVR_LOG',2);
-- 查询配置
SELECT SF_GET_PARA_VALUE (1, 'SVR_LOG');
关闭SQL日志记录功能:
SP_SET_PARA_VALUE(1,'SVR_LOG',0);