达梦sqllog慢日志配置方案,抓取用户所有的操作记录

很多用户反馈,开启审计影响数据库性能,但是不开启审计,数据库没保障,数据无安全性,误删了数据,无法找到记录

达梦慢日志可以配置下,记录用户的操作记录

 

mkdir -p /data/dmlog/log

vi /data/dmdb/sqllog.ini

BUF_TOTAL_SIZE = 10240   #SQL 日志 buffer 占用空间的上限,单位为 KB,取值范围 1024~1024000
BUF_SIZE = 1024                  #一块 SQL 日志 BUFFER 的空间大小,单位为 KB,取值范围 50~409600
BUF_KEEP_CNT = 6             #系统保留的 SQL 日志缓存的个数,取值范围 1~ 100
[SLOG_ALL]
FILE_PATH = /data/dmlog/log    #日志打印的路径
PART_STOR = 0                  #SQL 日志分区存储,表示 SQL 日志进行分区存储的划分条件。 0 表示不划分;1 表示 user:根据不同用户分布存储
SWITCH_MODE = 2            #示 SQL 日志文件切换的模式:0:不切换  1:按文件中记录数量切换   2:按文件大小切换   3:按时间间隔切换
SWITCH_LIMIT = 2000        #不同切换模式 SWITCH_MODE 下,意义不同:1 按数量切换时,一个日志文件中的 SQL 记录条数达到多少条之后,系统自动将日志切换到另一个文件中。取值范围 1000~10000000,缺省为 100000      2 按文件大小切换时,一个日志文件达到该大小后,系统自动将日志切换到另一个文件中,单位 MB。取值范围 1~2000,缺省为 128       3 按时间间隔切换时,每隔指定的时间间隔,系统自动将日志切换到另一个文件中,单位分钟。取值范围 1~30000,缺省为 60

ASYNC_FLUSH = 1           #  是否打开 SQL 日志异步刷盘功能。0:否,采用实时刷盘;1:是,采用异步刷盘
FILE_NUM = 50     #保存50文件,每个文件2G,就是100G,预留好磁盘空间。总共记录多少个日志文件,当日志文件达到这个设定值以后,再生成新的文件时,会删除最早的那个日志文件。取值范围 2~1024。日志文件名称中将包含日期时间信息

 

 

数据库所有操作都会打印到dm_sql*的日志下,再通过分析日志,可以查到用户的操作记录

 


SP_SET_PARA_VALUE(1,'SVR_LOG',1);   #开启日志
SP_REFRESH_SVR_LOG_CONFIG();       # 如果对 sqllog.ini 进行了修改,可通过调用函数即时生效,无需重启数据库

 

posted @ 2025-01-14 15:12  徐创业  阅读(397)  评论(0)    收藏  举报