首页 > 数据库 >DM达梦数据库的常用性能诊断语句

DM达梦数据库的常用性能诊断语句

时间:2023-06-15 20:55:05浏览次数:31  
标签:语句 DM -- 达梦 SQL WHERE ID SELECT ls

 

-- 查询活跃会话
SELECT *
FROM V$SESSIONS
WHERE STATE='ACTIVE';


--查询已执行超过 2 秒的活动 SQL。
SELECT* FROM (
SELECT SESS_ID,SQL_TEXT,DATEDIFF(SS,LAST_RECV_TIME,SYSDATE) Y_EXETIME,
        SF_GET_SESSION_SQL(SESS_ID) FULLSQL,CLNT_IP
FROM V$SESSIONS WHERE STATE='ACTIVE')
WHERE Y_EXETIME>=2;


-- 慢SQL
SELECT ls.Sess_id, ls.sql_id, ls.* FROM V$LONG_EXEC_SQLS ls WHERE ls.sql_text LIKE '%xxxx%' ORDER BY ls.finish_time desc;


-- 查询阻塞。
WITH LOCKS AS
         (SELECT O.NAME, L.*, S.SESS_ID, S.SQL_TEXT, S.CLNT_IP,S.LAST_SEND_TIME
            FROM V$LOCK L, SYSOBJECTS O, V$SESSIONS S
           WHERE L.TABLE_ID = O.ID AND L.TRX_ID = S.TRX_ID),
      LOCK_TR AS
          (SELECT TRX_ID WT_TRXID, TID BLK_TRXID
            FROM LOCKS
           WHERE BLOCKED = 1),
      RES AS
          (SELECT SYSDATE STATTIME,T1.NAME,T1.SESS_ID WT_SESSID,S.WT_TRXID,
                 T2.SESS_ID BLK_SESSID,S.BLK_TRXID,T2.CLNT_IP,
                 SF_GET_SESSION_SQL (T1.SESS_ID) FULSQL,
                 DATEDIFF (SS, T1.LAST_SEND_TIME, SYSDATE) SS,
                 T1.SQL_TEXT WT_SQL, T2.SQL_TEXT BLK_SQL
            FROM LOCK_TR S, LOCKS T1, LOCKS T2
           WHERE     T1.LTYPE = 'OBJECT'
                 AND T1.TABLE_ID <> 0
                 AND T2.LTYPE = 'OBJECT'
                 AND T2.TABLE_ID <> 0
                 AND S.WT_TRXID = T1.TRX_ID
                 AND S.BLK_TRXID = T2.TRX_ID)
SELECT DISTINCT WT_SQL,CLNT_IP,SS,WT_TRXID,BLK_TRXID, BLK_SQL
FROM RES;


-- 查询内存中的执行计划
SELECT * FROM V$SQL_STAT;
SELECT * FROM V$SQL_PLAN sp WHERE sp.sql_id = 8325105;
SELECT * FROM V$SQL_PLAN_NODE sp WHERE sp.sql_id = 8325105;        -- DEPTH: 节点层次;    CARD: 行数
SELECT * FROM V$SQL_SUBPLAN sp WHERE sp.sql_id = 8325105;
SELECT * FROM V$SQL_PLAN_DCTREF sp WHERE sp.sql_id = 8325105;

-- 清空指定SQL的执行计划
select * from v$cachepln where sqlstr LIKE '%table_tkk%';
SP_CLEAR_PLAN_CACHE(281071332652960);

SELECT * FROM V$SQL_STAT_HISTORY;
SELECT * FROM v$SQL_HISTORY sh ORDER BY sh.start_time;


SELECT ls.Sess_id, ls.sql_id, ls.* FROM V$LONG_EXEC_SQLS ls WHERE ls.sql_text LIKE '%xxxx%' ORDER BY ls.finish_time desc;
SELECT sh.EXEC_ID, sh.* FROM v$SQL_HISTORY sh WHERE  sh.sess_id = 281064270463272 AND sh.sql_id = 8325105 ;

-- 查询内存中的执行计划
SELECT     N.NAME, TIME_USED, N_ENTER, n.*, h.*
FROM     V$SQL_NODE_NAME N, V$SQL_NODE_HISTORY H
WHERE N.TYPE$ = H.TYPE$
     AND EXEC_ID = 628528422;

/*
     ET参数:EXEC_ID
    
     ET结果说明:
         OP: 操作符
         TIME(us): 时间开销,单位为微秒
         PERCENT: 执行时间占总时间百分比
         RANK: 执行时间耗时排序
         SEQ: 执行计划节点号
         N_ENTER: 进入次数
*/
CALL ET(628530596);   -- EXEC_ID; 



SELECT * FROM  V$PARAMETER p WHERE p.Name LIKE '%MONITOR_SQL_EXEC%';
SF_SET_SESSION_PARA_VALUE('MONITOR_SQL_EXEC', 1);


-- 查询大表
SELECT t.num_rows, t.sample_size, t.last_analyzed, t.*
FROM dba_tables t
WHERE t.num_rows >0
ORDER BY t.num_rows desc;

-- 查询字段
SELECT *
FROM user_tab_columns t
WHERE t.table_name = 'tableName'
ORDER BY t.column_id;


--查询索引
SELECT i.num_rows, i.sample_size, i.last_analyzed, i.*
FROM dba_indexes i
WHERE i.table_name = 'tableName';

SELECT * FROM dba_ind_columns c
WHERE c.table_name like 'TKK2%'
ORDER BY c.table_name, c.index_name, c.COLUMN_POSITION;

select para_name,para_value from v$dm_ini where para_name ='CLOB_LIKE_MAX_LEN';



-- 更新统计信息。
DBMS_STATS.TABLE_STATS_SHOW('schemaName','tableName');
DBMS_STATS.GATHER_TABLE_STATS('schemaName','tableName',null,100,TRUE,'FOR ALL COLUMNS SIZE AUTO');
DBMS_STATS.GATHER_INDEX_STATS('schemaName','tableName');


--AWR 日志诊断
--启用系统包和 AWR 包:
CALL SP_INIT_AWR_SYS(1);
CALL SP_CREATE_SYSTEM_PACKAGES(1);

--查询 AWR 快照:
SELECT * FROM SYS.WRM$_SNAPSHOT;

--设置快照间隔,如果不设置快照间隔,手动执行快照后 SYS.WRM$_SNAPSHOT 视图中没有记录:
CALL DBMS_WORKLOAD_REPOSITORY.AWR_SET_INTERVAL(50);

--在两个时间点分别手动创建快照,或者等待系统自动生成。
--10:00时创建第一快照:
CALL DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();

--30分钟后再创建一个,10:30:
CALL DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();

--查询 AWR 快照:
SELECT * FROM SYS.WRM$_SNAPSHOT;

--创建AWR报告,SYS.AWR_REPORT_HTML(快照ID1,快照ID2,'AWR报告存放路径','AWR报告名称.HTLM'):
SYS.AWR_REPORT_HTML(1,2,'C:\','AWR1.HTML');
  

 

标签:语句,DM,--,达梦,SQL,WHERE,ID,SELECT,ls
From: https://www.cnblogs.com/zhaoguan_wang/p/17484089.html

相关文章

  • SQL 之 DML(MySQL)
    插入数据若插入的列包含外键,需要确保外键的值在被应用的表里是存在的。插入指定列的数据insertinto表名[(列名1,..)]values(列值1,…)前提为省略的列名的属性为空。INSERTINTOEMP(EMPNO,ENAME)VALUES('7369','SMITH');插入所有列的数据insertinto表名values......
  • sqlserver、myslq常用sql语句
    前言常用建表、加索引、字段整理一、SqlServer1.建表droptablexxl_userscreatetablexxl_users(game_user_idintprimarykeyidentity(1,1),[user_id]intforeignkeyreferencesusr_users([user_id])notnull,--外键last_share_timedatetimedefault('2022-2-2......
  • Doosan Excavator Inspection Diagnostic Tool DDT SCR DPF G2 Scan DCU ECU DMS-5 Ha
    DoosanExcavatorInspectionDiagnosticToolDDTSCRDPFG2ScanDCUECUDMS-5Hardware+Software2022.09Softwaredownloadlink:https://mega.nz/file/Bk8X1QxA#g49TrmFsIljfHQpAIkQlG-VIWSgug8kLq3VffqAW00YHardware+SoftwareVersionDoosanDDTSCRDoosan......
  • plsq怎么查看oracle最近执行的sql语句
    plsq怎么查看oracle最近执行的sql语句?怎么可以使用如下语句查询 //其中sql_text即为执行的sql语句,sql_exec_start为sql执行开始时间SELECTa.sql_text,a.sql_exec_start,a.*FROMV$SQL_MONITORawherea.service_name='easorcl'ORDERBYSQL_EXEC_STARTDESC;......
  • Admission controllers(准入控制器)
    含义准入控制器是一段代码,在请求认证和鉴权之后、对象被持久化之前拦截到达API服务器的请求准入控制器限制创建、删除、修改对象的请求作用准入控制器可以执行验证(validating)、或变更(Mutating)操作准入控制阶段第一阶段:运行变更准入控制器第二阶段:运行验证准入控制器命令行......
  • python基础知识——控制语句
    控制语句主要有条件语句和循环语句。一、条件语句1、if语句格式if表达式:语句1else:语句2如下面的例子:a=raw_input('x:')ifint(a)>0:printaelse:print-int(a)其中,raw_input()用于获取控制台的输入,由于raw_input()返回的是字符串,......
  • 为什么RLHF中,PPO需要Critic模型而不是直接使用RewardModel
    在强化学习中,PPO(ProximalPolicyOptimization)算法是一种基于策略梯度的方法,用于训练强化学习智能体。PPO算法中引入Critic模型的主要目的是为了提供一个价值估计器,用于评估状态或状态动作对的价值,从而辅助策略的更新和优化。虽然奖励模型(RewardModel)可以提供每个状态或状态动作......
  • 修改kubeadm证书长期有效
    获取kubernetesv1.18.16源码包gitclonehttps://github.com/kubernetes/kubernetes.git-bv1.18.16或者以下方式下载解压wgethttps://github.com/kubernetes/kubernetes/archive/refs/tags/v1.18.16.tar.gztar-zxvfv1.18.16.tar.gz进入目录cdkubernetes修改cmd/kub......
  • java开发C语言编译器: return 语句的解释和执行
    在C语言程序中,很多函数并不是执行全部语句后,才从最底部返回的,大多数情况下,当某些条件成立时就可以通过return语句立即返回,而无需执行接下来的代码,本节,我们继续增强java开发的C语言解释器功能,使其能够处理return语句,完成本节代码后,我们的C语言解释器能够正常解析和执行下面的代码:in......
  • WDM波分复用技术:TFF(薄膜滤波) & AWG(阵列波导光栅)介绍
    WDM(WavelengthDivisionMultiplexing)技术是通过在光纤中传输多个不同波长的光信号来扩大光纤传输带宽并提高网络传输能力的一种技术,而TFF(薄膜滤波)和AWG(阵列波导光栅)则是两种常用的WDM技术。1.TFF技术TFF(Thin-filmfilter)技术是一种常用的WDM器件技术之一,也被称为薄膜滤波技......