达梦数据库教程(15)SQL跟踪日志与慢查询日志

达梦数据库教程(15)SQL跟踪日志与慢查询日志

一、达梦跟踪日志

达梦数据库跟踪日志即trace log,是数据库的详细诊断信息文件,包含系统各会话执行的 SQL 语句、参数信息、错误信息、执行时间等,用于排查故障、性能问题或内部错误。

1、启用跟踪日志

通过 dm.ini 文件的 SVR_LOG 参数开启跟踪日志,1为开启,同时该参数支持动态配置

SP_SET_PARA_VALUE(1,'SVR_LOG',1);


tracelog2.png


2、日志配置

当日志开启后,会在达梦实例目录(如/data/dmdbms/DAMENG)生成配置文件sqllog.ini,该文件主要参数配置如下:

· FILE_NUM:总共记录多少个日志文件,默认为0时会生成2个日志文件,当日志数超出设定值后将进行日志轮询

· SWITCH_MODE:日志文件切换模式,0为不切换、1为按文件中记录数量切换、2为按文件大小切换、3为按时间间隔切换,建议为2

· SWITCH_LIMIT:不同日志切换模式下文件的切换规则,如果SWITCH_MODE为1,这里的设置就是SQL记录条数达到多少后进行日志切换;如果SWITCH_MODE为2,则是日志文件达到大小后进行切换,单位为MB;如果SWITCH_MODE为3,则是达到指定时间间隔进行日志切换,单位为分钟

· MIN_EXEC_TIME:当SQL语句的执行时间小于该值则不记录,单位为毫秒

· SQL_TRACE_MASK:LOG 记录的语句类型掩码,如1表示全部记录、2为 全部 DML 类型语句、3为 全部 DDL 类型语句、4为UPDATE 类型语句、5DELETE 类型语句、6INSERT 类型语句、7SELECT 类型语句

tracelog3.png

3、加载日志配置

如果对 sqllog.ini 进行了修改,可通过调用函数即时生效,无需重启数据库

SP_REFRESH_SVR_LOG_CONFIG();

4、查看日志

文件为纯文本文件,命名规则通常是"dmsql_实例名_日期_时间.log",默认生成在数据库 log 目录

tracelog1.png


日志记录了详细的SQL语句trace4.png


二、达梦慢查询

1、开启慢查询记录

除了通过跟踪日志,还可以通过 V$LONG_EXEC_SQLS 视图来查看达梦数据库中的慢查询语句。要使用该参数的话需要启用ENABLE_MONITOR和MONITOR_TIME两个动态参数,当这两个参数值为1时,可以通过V$LONG_EXEC_SQLS视图显示数据库最近 1000 条执行时间超过阈值的 SQL 语句,默认为 1000 毫秒。

#修改参数
SP_SET_PARA_VALUE(1,'ENABLE_MONITOR',1);
SP_SET_PARA_VALUE(1,'MONITOR_TIME',1);

#查看参数值
select SF_GET_PARA_VALUE(1,'ENABLE_MONITOR');
select SF_GET_PARA_VALUE(1,'MONITOR_TIME');

2、查询慢SQL

查询结果中 EXEC_TIME记录了语句的执行时间,SQL_TEXT 列记录了 SQL 语句

#模拟慢查询
SQL> begin
dbms_lock.sleep(3);
select * from ywpie.t1;
end;

#查询视图
SELECT * FROM SYS.V$LONG_EXEC_SQLS


trace5.png

文章评论

猜你喜欢

达梦数据库教程(14)统计信息与执行计划

国产数据库 达梦数据库教程(14)统计信息与执行计划

一、达梦数据库执行计划所有DBMS的执行计划作用基本都是相同的,用于显示一条 SQL 语句在数据库中的执行过程,通过执行计划可以看出SQL影响数据量、是否有使用合理的索引等,有助于SQL优化1、达梦数...

达梦数据库教程(13)如何查找并解决阻塞事务

国产数据库 达梦数据库教程(13)如何查找并解决阻塞事务

一、数据库阻塞的原因当一个数据库提交DML、DDL语句时出现阻塞现象通常有两种情况,一是该语句影响的数据量太多,数据库需要时间来处理,这种情况一般无需处理,等事务正常结束即可;另一种则是被其他事务的锁...

达梦数据库教程(12)守护集群部署与管理

国产数据库 达梦数据库教程(12)守护集群部署与管理

一、达梦数据库守护集群介绍达梦数据库通过守护集群可以实现主备模式或读写分离集群,二者在搭建过程上基本一致,区别在于:· 数据守护集群:通常使用实时归档 + ARCH WAIT APPLY=0 (高性能...

达梦数据库教程(11)达梦数据库授权与版本更新

国产数据库 达梦数据库教程(11)达梦数据库授权与版本更新

一、达梦数据库授权管理1、查询授权查询授权到期时间,如果是永久授权,EXPIRED_DATE 列值是 NULL,AUTHORIZED_CUSTOMER 是用户名称SELECT * ...

国产数据库 达梦数据库教程(9)达梦数据库定时备份配置

达梦数据库教程(9)达梦数据库定时备份配置
达梦数据库教程(9)达梦数据库定时备份配置
达梦数据库教程(9)达梦数据库定时备份配置
达梦数据库教程(9)达梦数据库定时备份配置

一、达梦数据库备份管理达梦数据库通过自带的一些函数以及动态视图可以实现定期物理备份、清理历史备份集等自动化操作,不需要再额外配置操作系统的计划任务。如果是需要自动化逻辑备份的话,则需要使用dexp结合...