当前位置: 首页 > news >正文

达梦定时任务更新阻塞信息到表

数据库阻塞,一些原因,查不到历史的阻塞信息。配置存储过程,把一些阻塞信息更新到表,然后配置定时任务,定时更新

 

 

--STEP1:创建辅助记录表:

CREATE TABLE TRX_WAIT(
"STATTIME" TIMESTAMP,
"SS" INTEGER,
"WT" VARCHAR2(30),
"WT_SESS_ID" BIGINT,
"WT_SQL_TEXT" VARCHAR(1000),
"WT_STATE" VARCHAR(10),
"WT_TRX_ID" BIGINT,
"WT_USER_NAME" VARCHAR(128),
"WT_CLNT_IP" VARCHAR(128),
"WT_APPNAME" VARCHAR(128),
"WT_LAST_SEND_TIME" DATETIME(6),
"FM" VARCHAR2(30),
"FM_SESS_ID" BIGINT ,
"FM_SQL_TEXT" VARCHAR(1000),
"FM_STATE" VARCHAR(10),
"FM_TRX_ID" BIGINT,
"FM_USER_NAME" VARCHAR(128),
"FM_CLNT_IP" VARCHAR(128),
"FM APPNAME" VARCHAR(128),
"FM LAST SEND TIME"DATETIME(6)
);

 

--STEP2:创建辅助存储过程GET_TX_WAIT

CREATE PROCEDURE GET_TX_WAIT AS
BEGIN
INSERT INTO TRX_WAIT
SELECT SYSDATE AS STATTIME,
DATEDIFF(SS,S1.LAST_SEND_TIME,SYSDATE) AS SS,
'被阻塞的信息' AS WT,
S1.SESS_ID AS WT_SESS_ID,
S1.SQL_TEXT AS WT_SQL_TEXT,
S1.STATE AS WT_STATE,
S1.TRX_ID AS WT_TRX_ID,
S1.USER_NAME AS WT_USER_NAME,
S1.CLNT_IP AS WT_CLNT_IP,
S1.APPNAME AS WT_APPNAME,
S1.LAST_SEND_TIME AS WT_LAST_SEND_TIME,
'引起阻塞的信息' AS FM,
S2.SESS_ID AS FM_SESS_ID,
S2.SQL_TEXT AS FM_SQL_TEXT,
S2.STATE AS FM_STATE,
S2.TRX_ID AS FM_TRX_ID,
S2.USER_NAME AS FM_USER_NAME,
S2.CLNT_IP AS FM_CLNT_IP,
S2.APPNAME AS FM_APPNAME,
S2.LAST_SEND_TIME AS FM_LAST_SEND_TIME
FROM V$SESSIONS S1,
V$SESSIONS S2 ,V$TRXWAIT W
WHERE S1.TRX_ID = W.ID
AND S2.TRX_ID = W.WAIT_FOR_ID;
COMMIT;
END;

 


----STEP3:创建作业定时10分钟搜一次,收集阻塞数据:

call SP_CREATE_JOB('GETTRX',1,0,'',0,0,'',0,'获取历史阻塞信息');

call SP_JOB_CONFIG_START('GETTRX');

call SP_ADD_JOB_STEP('GETTRX', 'GETTRX_SQL', 0, 'call GET_TX_WAIT;', 1, 1, 0, 0, NULL, 0);

call SP_ADD_JOB_SCHEDULE('GETTRX', 'GETTRX01', 1, 1, 1, 0, 10, '00:00:00', '23:59:59', '2025-10-13 17:48:00', NULL, '');

call SP_JOB_CONFIG_COMMIT('GETTRX');

 

--最后查表,就知道历史的阻塞信息了
select * from TRX_WAIT;

 


###测试:

CREATE TABLE "SYSDBA"."TEST1"
(
"NAME" VARCHAR(20),
"ID" INT NOT NULL,
NOT CLUSTER PRIMARY KEY("ID"));

打开两个查询窗口:

在两个窗口都输入插入数据语句:
insert into sysdba.test1 values('aaa',1);

一个窗口顺利执行:
第二个窗口无反应,发生阻塞:

第一个窗口里,插入的数据由于没有 commit 提交,事务没有结束,此时因为存在主键约束,第二个窗口查不到对应的数据,同样也无法插入,此时发生阻塞。

再打开个窗口执行

call GET_TX_WAIT;


再查询,就可以看到阻塞信息了
select * from TRX_WAIT;

 

http://www.gsyq.cn/news/21624.html

相关文章:

  • 2025年千斤顶厂家最新权威推荐排行榜:液压千斤顶、机械千斤顶、电动千斤顶源头厂家综合实力深度解析
  • VKD104CR是永嘉微VINKA推出低功耗2路触摸芯片该芯片具有较高的集成度
  • STM32学习路线!600+讲课程!软硬件兼修:裸机+RTOS+LVGL+硬件设计+项目实战 (STM32多核心开发板)
  • 【2025-10-11】适应变化
  • C语言的学习——常量
  • 会充电的CANoe,高效完成即插即充(PnC)智能充电功能测试
  • Bridge 2025超详细保姆级下载安装全教程(含软件下载)
  • 2025年锅炉厂家最新权威推荐榜:燃气采暖锅炉/电热水锅炉/生物质锅炉/真空热水锅炉/蒸汽发生器全品类深度解析
  • PyAutoGUI库自动化测试脚本工具模拟键盘鼠标操作
  • 企业身份认证系统选型:Azure AD 与 Keycloak 效果详解
  • 2025 年月子会所推荐:女王臻瑷专注母婴护理 10 年,西安口碑之选的高端母婴护理服务解析
  • 国产测试用例管理工具市场格局解析:四大产品如何赋能企业数字化转型
  • 学习 n8n 心得
  • 2025 年外呼系统公司推荐:重庆腾宇科技,外呼系统专业缔造者与行业服务典范
  • 在AI技术唾手可得的时代,挖掘直播工具新需求成为关键突破点
  • 多模态识别技术革新物品追踪流程
  • 2025 年震动盘厂家最新推荐排行榜:精密 / 电子 / 笔筒 / 塑料震动盘及定做服务优选企业榜单发布
  • 2025 年展会搭建公司最新推荐排行榜:服务商创意定制与全流程服务能力深度解析
  • 2025年常州服装培训学校培训学校推荐榜
  • 2025 最新隔音棉生产厂家口碑推荐榜:甄选家装公装专用材质,涵盖西南及全国实力品牌昆明/下水管/阻尼片/专用隔音棉厂家推荐
  • 找靠谱图像处理软件?Adobe PS2025 全球设计师都在用
  • SQLite批量操作优化方案
  • AI元人文:元规则、元道德与哪吒模型
  • 知音 CMS:全场景音频与小说分销一体化解决方案
  • 2025 年国内云计算公司最新推荐排行榜:聚焦 AI 训推与大模型需求的优质厂商精选指南模型训推云计算/大模型云计算/AI开发云计算公司推荐
  • 2025年防水连接器厂家最新推荐排行榜,连接器,航空插头,工业网线,专业防水与耐用性能深度解析
  • 2025年液压阀块厂家最新推荐排行榜,液压阀块加工,阀块零件机加工,液压阀加工,各种液压阀块专业制造商精选
  • 2025年干燥设备厂家最新权威推荐榜:小型喷雾/实验室离心喷雾/双锥回转真空/搪瓷双锥/旋转闪蒸/振动流化床/真空耙式/单层带式/多层带式/立式沸腾/卧式沸腾/滚筒刮板干燥机
  • 如何实现cmd可以访问conda但不能通过默认环境访问python
  • 2025 年无氧烘箱厂家推荐榜:洁净/高真空/HMDS/真空无氧烘箱/聚焦环保节能与洁净需求,这家企业成行业优选