签到成功

知道了

CNDBA社区CNDBA社区

DM 达梦数据库 SQL执行号 说明

2020-09-28 18:26 2185 0 原创 DM 达梦
作者: Dave

在达梦数据库的disql 工具中执行SQL语句时,会反馈一行提示,包含执行时间和执行号,如下:

https://www.cndba.cn/dave/article/4261
https://www.cndba.cn/dave/article/4261https://www.cndba.cn/dave/article/4261

[dmdba@www.cndba.cn ~]$ disql SYSDBA/SYSDBA

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间: 5.011(毫秒)
disql V8
SQL>
SQL> select * from cndba;
select * from cndba;
第1 行附近出现错误[-2106]:无效的表或视图名[CNDBA].
已用时间: 0.989(毫秒). 执行号:0.
SQL> select * from DAVE."cndba";

行号     id       name       phone
---------- -------- ---------- ------------------
1          1.000000 dave       18505568888.000000

已用时间: 0.547(毫秒). 执行号:6271.
SQL>

这里的执行号就是成功执行过SQL语句次数,执行成功执行号加一次,失败不加。执行号是一个累计值,会记录自第一次执行SQL语句后的所有次数。

注意这里的是所有,不仅仅是disql,也包含DM MANAGER等其他地方执行的语句,该值记录在达梦的系统统计信息中。

[dmdba@www.cndba.cn ~]$ disql SYSDBA/SYSDBA

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间: 5.011(毫秒)
disql V8
SQL>
SQL> select * from v$sysstat where name='sql executed count';

行号     ID          CLASSID     NAME               STAT_VAL
---------- ----------- ----------- ------------------ --------------------
1          14          2           sql executed count 6275

已用时间: 2.818(毫秒). 执行号:6275.
SQL>

这里的CLASSID含义如下:https://www.cndba.cn/dave/article/4261

1:字典信息;
2:SQL;
3:事务; 
4:检查点;
5:RLOG;
6:UNDO;
7:IO;
8:B 树;
9:网络;
10:文件;
11:内存;
12:CPU;
13:OS;
14:缓冲区;
15:限流控制;
20:其它

本来想删除这部分的统计信息,但查看了一下达梦的统计信息包,里面只有模式、表、列、索引的统计信息维护,并没有提供系统统计信息的维护。https://www.cndba.cn/dave/article/4261https://www.cndba.cn/dave/article/4261

然后进一步发现V$SYSSTAT居然是一张表:

CREATE TABLE "SYS"."V$SYSSTAT"
(
"ID" INT,
"CLASSID" INT,
"NAME" VARCHAR(128),
"STAT_VAL" BIGINT) STORAGE(ON "SYSTEM", CLUSTERBTR) ;

尝试直接update:

https://www.cndba.cn/dave/article/4261
https://www.cndba.cn/dave/article/4261

SQL> update v$sysstat set stat_val=0 where name='sql executed count';
update v$sysstat set stat_val=0 where name='sql executed count';
第1 行附近出现错误[-2633]:试图修改系统表或内建表[V$SYSSTAT].
已用时间: 0.297(毫秒). 执行号:0.
SQL>

这里直接禁止我们update。 所以在官方没有提供系统统计信息维护的情况下,我这里“破坏性”的想法就无法实现了,不过正常来讲,官方应该有一些内部的工具和方法可以直接修改这些值,只是我们外界不得而知。 https://www.cndba.cn/dave/article/4261

https://www.cndba.cn/dave/article/4261

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Dave

Dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 1904
    原创
  • 2
    翻译
  • 460
    转载
  • 134
    评论
  • 访问:3753290次
  • 积分:3147
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by ZhiXinTech · 皖ICP备19020168号·

        QQ交流群