暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

达梦开启sql记录功能

原创 HoldOnBash 2023-06-29
2076
    • 开启DM数据库的SQL日志功能,可以记录已经执行的SQL语句。通过分析日志,可以找出慢的SQL语句,对于SQL语句优化等操作,尤为重要。

    参数说明

    在dm.ini配置文件中,SVR_LOG缺省值为0。可选参数说明:是否打开 SQL 日志功能

    0:表示关闭;1:表示打开;2:按文件中记录数量切换日志文件,日志记录为详细模式;3:不切换日志文件,日志记录为简单模式,只记录时间和原始语句。SVR_LOG_NAME缺省值为SLOG_ALL,使用 SQLLOG.INI 中预设的模式的名称。

  • SQL> SELECT para_name,para_value,sess_value,file_value FROM V$DM_INI where para_name in ('SVR_LOG','SVR_LOG_NAME');
     
    行号     PARA_NAME    PARA_VALUE SESS_VALUE FILE_VALUE
    ---------- ------------ ---------- ---------- ----------
    1          SVR_LOG_NAME SLOG_ALL   SLOG_ALL   SLOG_ALL
    2          SVR_LOG      0          0          0
     
    [SLOG_ALL]
     
        FILE_PATH    = ..\log         #log文件存放的位置
     
        PART_STOR    = 0
     
        SWITCH_MODE  = 2              #表示 SQL 日志文件切换的模式:0:不切换;1:按文件中记录数量切换;2:按文件大小切换;3:按时间间隔切换
     
        SWITCH_LIMIT   = 128                 
     
        ASYNC_FLUSH   = 1             #是否打开异步 SQL 日志功能;1:打开
     
        FILE_NUM = 5                  #达到5个sql文件后删除第一个日志文件
     
        ITEMS    = 0                  #配置 SQL 日志记录中的那些列要被记录,0:表示记录所有的列
     
        SQL_TRACE_MASK  = 1           #LOG 记录的语句类型掩码;1:全部记录
     
        MIN_EXEC_TIME = 0             #详细模式下,记录的最小语句执行时间
     
        USER_MODE   = 0
    
        USERS =
  • 开启方式
  • 修改dm配置文件,重启数据库生效

将SVR_LOG参数修改为1 表示开启sql记录日志;

重启数据库生效

在线修改

SQL> SP_SET_PARA_VALUE(1,'SVR_LOG',1);
DMSQL executed successfully
used time: 60.224(ms). Execute id is 1400.
SQL>

SQL> SELECT SF_GET_PARA_VALUE (1, 'SVR_LOG');

Server[LOCALHOST:5236]:mode is primary, state is suspend
connected

LINEID     SF_GET_PARA_VALUE(1,'SVR_LOG')
---------- ------------------------------
1          1

used time: 26.253(ms). Execute id is 1500.
SQL>

关闭SQL日志

关闭SQL 日志:
SQL> SP_SET_PARA_VALUE(1,’SVR_LOG’,0);
  • sql日志文件的使用
  • [dave@www.cndba.cn DCP]$ disql SYSDBA/dameng123
    
    Server[LOCALHOST:5236]:mode is primary, state is open
    login used time : 0.911(ms)
    disql V8
    SQL> CREATE TABLE "SYSDBA"."LOG_COMMIT"
    (
    "STARTTIME" DATETIME(6),
    "SESS" VARCHAR(500),
    "SQLSTR" TEXT,
    "EXETIME" FLOAT,
    "SQLSTR_SUB" VARCHAR(8000),
    "ROWCOUNT" VARCHAR(8000),
    "SQLSTR_PARA" VARCHAR(8000),
    "WAITTIME" VARCHAR(8000),
    "EUER" VARCHAR(100),
    "OPTYPE" VARCHAR(30)) STORAGE(USING LONG ROW, ON "MAIN", CLUSTERBTR) ;
    2   3   4   5   6   7   8   9   10  11  12  executed successfully
    used time: 5.378(ms). Execute id is 600.
    SQL>
    SQL> CREATE  INDEX "IDX_EXETIME_RESULT_2022_12_02" ON "SYSDBA"."LOG_COMMIT"("EXETIME" ASC) STORAGE(ON "MAIN", CLUSTERBTR) ;
    executed successfully
    used time: 7.143(ms). Execute id is 601.
    SQL>

修改DMLOG 配置文件

[dave@www.cndba.cn DMLOG8.7]$ pwd
/dm/software/DMLOG8.7
[dave@www.cndba.cn DMLOG8.7]$ ll
总用量 11044
-rw-r--r-- 1 dmdba dinstall 7691384 11  2 10:14 Dmlog_DM_8.7.jar
-rw-r--r-- 1 dmdba dinstall    1070 11  2 10:39 dmlog.properties
-rw-r--r-- 1 dmdba dinstall 3274210 11  2 10:14 echarts.js
-rw-r--r-- 1 dmdba dinstall    4326 11  2 10:14 echarts_qps2.html
-rw-r--r-- 1 dmdba dinstall    4278 11  2 10:14 echarts_qps.html
-rw-r--r-- 1 dmdba dinstall  304436 11  2 10:14 jquery.js
-rw-r--r-- 1 dmdba dinstall   11264 11  2 10:14 readme.doc
[dave@www.cndba.cn DMLOG8.7]$

[dave@www.cndba.cn DMLOG8.7]$ cat dmlog.properties |egrep -v '^$|#'
ismpp=0

ip=127.0.0.1

port=5236

username=SYSDBA

password=dameng123

use_result=0

sqlpath=/dm/dmdbms/log

time=0

frequency=0

is_replace=1

max_exetime=10000

min_exetime=100

e_percent=10

if_excel=1

tab_name=log_commit

 执行jar 包

[dave@www.cndba.cn DMLOG8.7]$ java -jar Dmlog_DM_8.7.jar
Linux
创建目录RESULT_2022_11_02_10_43_56成功!
----------------分析文件:install.log----------------
无效的sql日志文件:/dm/dmdbms/log/install.log
----------------分析文件:install_ant.log----------------
无效的sql日志文件:/dm/dmdbms/log/install_ant.log
----------------分析文件:DmAPService.log----------------
----------------分析文件:dm_SBTTRACE_202210.log----------------
----------------分析文件:dm_dmap_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_dmap_202210.log
----------------分析文件:dm_BAKRES_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_BAKRES_202210.log
----------------分析文件:dm_dmap_br_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_dmap_br_202210.log
----------------分析文件:dm_dmrman_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_dmrman_202210.log
----------------分析文件:dm_unknown_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_unknown_202210.log
----------------分析文件:dm_DCP_202210.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_DCP_202210.log
----------------分析文件:dm_DCP_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_DCP_202211.log
----------------分析文件:dm_dmap_202211.log----------------
----------------分析文件:dm_dmrman_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_dmrman_202211.log
----------------分析文件:dm_dmap_br_202211.log----------------
----------------分析文件:dm_BAKRES_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_BAKRES_202211.log
----------------分析文件:dmsql_DCP1_20221102_083758.log----------------
----------------分析文件:dm_dmwatcher_DCP1_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_dmwatcher_DCP1_202211.log
----------------分析文件:DmWatcherServiceDCP.log----------------
----------------分析文件:dm_unknown_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_unknown_202211.log
----------------分析文件:dmsvc_sh.log----------------
无效的sql日志文件:/dm/dmdbms/log/dmsvc_sh.log
----------------分析文件:dmsql_DCP1_20221102_103727.log----------------
----------------分析文件:DmServicedcp.log----------------
无效的sql日志文件:/dm/dmdbms/log/DmServicedcp.log
----------------分析文件:dm_DCP1_202211.log----------------
无效的sql日志文件:/dm/dmdbms/log/dm_DCP1_202211.log
----------------创建索引-------------------------
----------------创建索引成功---------------------
----------------开始分析-------------------------
----------------生成时间维度统计结果-------------
----------------生成次数维度统计结果-------------
----------------生成jfree散点图------------------
----------------生成echart统计图-----------------
----------------生成QPS统计图--------------------
----------------生成echart负载图-----------------
----------------TABLENAME:LOG_COMMIT-------------
----------------分析完毕,请查看结果-------------
[dave@www.cndba.cn DMLOG8.7]$

图表在:

echarts_qps.html

echarts_scatter_Statistics.html

相关的SQL 在:

more_than_0_ms_log_result.xls

more_than_0_times_log_result.xls

0

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论