在达梦数据库中,我们可以通过开启日志记录和设置最小执行时间来追踪慢SQL。下面是具体的步骤:
1. 修改dm.ini文件
使用以下命令编辑dm.ini文件:
cd /home/dmdba/dmdbms/data/DAMENG/ vim dm.ini
在dm.ini文件中找到以下两个参数并进行修改:
SVR_LOG_NAME = SLOG_ALL SVR_LOG = 1
SVR_LOG_NAME
:指定要使用的sqllog.ini中的sqllog sys名称。SVR_LOG
:指定是否打开Sql Log sys,1表示开启,0表示关闭。
2. 修改sqllog.ini文件
使用以下命令编辑sqllog.ini文件:
cd /home/dmdba/dmdbms/data/DAMENG/ vim sqllog.ini
在sqllog.ini文件中找到以下参数并进行修改:
BUF_TOTAL_SIZE = 10240 BUF_SIZE = 1024 BUF_KEEP_CNT = 6
BUF_TOTAL_SIZE
:设置SQL日志缓冲区总大小(单位:KB)。BUF_SIZE
:设置每个缓冲区的大小(单位:KB)。BUF_KEEP_CNT
:设置保留的日志缓冲区个数。
然后,在文件的末尾添加以下配置:
[SLOG_ALL] FILE_PATH = ../log PART_STOR = 0 SWITCH_MODE = 2 SWITCH_LIMIT = 128 ASYNC_FLUSH = 1 FILE_NUM = 5 ITEMS = 0 SQL_TRACE_MASK = 1 MIN_EXEC_TIME = 2
FILE_PATH
:指定日志文件的保存路径。SWITCH_MODE
:设置日志切换模式,2表示使用切换和详细模式。SWITCH_LIMIT
:设置日志切换的限制大小(单位:MB)。ASYNC_FLUSH
:设置是否异步刷新日志缓冲区,1表示开启,0表示关闭。FILE_NUM
:设置日志文件数量。SQL_TRACE_MASK
:设置SQL追踪掩码,1表示追踪全部SQL语句。MIN_EXEC_TIME
:设置记录执行时间超过多少秒的SQL。
3. 重启达梦服务
使用以下命令重启达梦服务:
cd /home/dmdba/dmdbms/bin ./DmServiceDMSERVER restart
完成上述步骤后,达梦数据库将开始记录执行时间超过设定阈值的SQL语句。相关的日志将保存在指定的日志文件中。
通过以上配置,在达梦数据库中你可以轻松地追踪慢SQL,并对其进行分析和优化。这将帮助你提高数据库的性能和效率。
注意:在实际生产环境中,追踪慢SQL可能会对系统性能产生一定影响,因此建议在非高峰期进行该操作,并根据需要调整日志记录的参数。
标签:BUF,数据库,ini,设置,SQL,日志,sqllog,追踪 From: https://www.cnblogs.com/n00dle/p/17636036.html