sql 日志的开启和关闭以及参数设置
目录
svr_log查询
SQL>
SELECT para_name,para_value,sess_value,file_value FROM V$DM_INI where para_name in ('SVR_LOG','SVR_LOG_NAME');
SVR_LOG=0表示未打开SQL日志
sqllog.ini配置
[dmdba@dameng8 dmeigdb]$ vi /dm/dmdata/dmeigdb/sqllog.ini
BUF_TOTAL_SIZE = 10240 #SQL日志 BUFFER 占用空间的上限
BUF_SIZE = 1024 #一块 SQL日志 BUFFER 的空间大小
BUF_KEEP_CNT = 6 #系统保留的 SQL 日志缓存的个数,有效值1-100
[SLOG_ALL]
FILE_PATH = /dm/dmdbms/dm8/log #日志文件所在的夹路径
PART_STOR = 0 #是否开启SQL日志分区存储
SWITCH_MODE = 0 #表示 SQL SQL日志文件切换的模式 日志文件切换的模式
SWITCH_LIMIT = 0 #不同模式下的限制,sql条数或者文件大小
ASYNC_FLUSH = 0 #是否打开异步 SQL 日志功能 日志功能 日志功能 。0:表示关闭; 1表示开启
FILE_NUM = 0 #总共记录多少个日志文件
ITEMS = 0 #配置 SQL SQL日志记录中的那些列要被记录。
SQL_TRACE_MASK = 0 #SQL日志的记录等级,1记录全部日志 2全部dml类型语句 3全部ddl语句等等
MIN_EXEC_TIME = 2 #详细模式下,记录的最小语句执行时间单位, 表示记录执行时间超过2ms的SQL语句
USER_MODE = 0 #L SQL日志按用户过滤时的模式
USERS = #打开 SVR_LOG_USER_MODE时指定的用户列 时指定的用户列 时指定的用户列表。
注意:只有参数 SVR_LOG 置为 1且 SVR_LOG_NAME 是 SLOG_ALL 时,sqllog.ini 中的 SLOG_ALL 的配置块才会生效。
开启日志
调用存储过程开启sql日志
sp_set_para_value(1,'SVR_LOG',1);
call SP_REFRESH_SVR_LOG_CONFIG();
示例(drop table)
SQL> select OWNER, TABLE_NAME, TABLESPACE_NAME from dba_tables;
SQL> drop table PERSONA.PERSON;
[dmdba@dameng8 log]$ more dmsql_DMEIGDB_20210825_080904.log
停用sql日志
SQL>
sp_set_para_value(1,'SVR_LOG',0);
更多达梦数据库解决方案,可访问如下地址: