ClustrixDB提供了几种机制来识别消耗大量系统资源的查询。这样的查询通常是应用程序索引不良或错误的结果。

ClustrixDB支持以下语法来杀死查询:

KILL [QUERY | CONNECTION] session_id 

识别长时间运行的查询

下面的语句将输出系统中运行时间最长的查询。这通常是系统管理员识别行为不端的集群上可能出现的问题的第一步。会话虚拟关系提供了关于每个会话执行状态的大量细节。除了当前语句外,还将显示连接信息和事务状态。

sql> select * from system.sessions where statement_state = 'executing' order by time_in_state_s desc limit \G
*************************** . row ***************************
nodeid:
session_id:
source_ip: 10.2.2.243
source_port:
local_ip: 10.2.14.15
local_port:
user:
database: system
trx_state: open
statement_state: executing
xid:
cpu:
isolation: REPEATABLE-READ
last_statement: select * from sessions where statement_state = 'executing' order by time_in_state_s desc limit
time_in_state_s:
created: -- ::
heap_id:
trx_age_s:
trx_mode: autocommit
trx_counter_select:
trx_counter_insert:
trx_counter_update:
trx_counter_delete:
trx_is_writer:
row in set (0.00 sec)

识别长时间运行的写入事务

在ClustrixDB等完全关系的SQL数据库中,长时间运行的写事务可能会导致问题。通常,行为不端的应用程序会错误地关闭自动提交选项,让每个会话在一个非常长的事务中运行。当发生这种情况时,这些事务将积累大量的写锁,从而阻止其他试图修改相同数据的事务运行。为了识别这些情况,ClustrixDB在sessions关系中包含几个列,这些列跟踪事务的时间、当前事务中执行的语句的数量和类型,以及事务是否发出任何写操作(布尔值0,1)。

例如,要查找系统中最古老的写事务,发出以下命令:

sql> select * from system.sessions where trx_is_writer order by trx_age desc limit \G
*************************** . row ***************************
nodeid:
session_id:
source_ip: 10.2.2.243
source_port:
local_ip: 10.2.14.15
local_port:
user:
database: sergei
trx_state: open
statement_state: executing
xid:
cpu:
isolation: REPEATABLE-READ
last_statement: select * from system.sessions where trx_is_writer order by trx_age desc limit
time_in_state_s:
created: -- ::
heap_id:
trx_age_s:
trx_mode: explicit
trx_counter_select:
trx_counter_insert:
trx_counter_update:
trx_counter_delete:
trx_is_writer:
row in set (0.00 sec)

最新文章

  1. 透析Express.js
  2. ajax 请求多张图片数据
  3. Thinkphp源码分析系列(一)–入口文件
  4. web 前端:连接mysql中文乱码问题的解决办法
  5. 什么是bower
  6. delphi 转换sql server 中的 bit类型
  7. ExtJs双ActionResult共用同一Js文件ID冲突解决方案
  8. java基础程序设计学习
  9. TP开发小技巧
  10. Go程序GC优化经验分享
  11. docker入门实战笔记
  12. Eclipse插件手动安装
  13. GitHub使用(三) - GitHub安装及初步使用
  14. 【转】 Python调用(运行)外部程序
  15. 三星5.0以上机器最简单激活Xposed框架的经验
  16. js实现一键导出Excel
  17. jmeter接口测试实例6-注册(参数化)
  18. springboot mail+Thymeleaf模板
  19. centos7安装elasticsearch-head
  20. css---颜色过渡渐变

热门文章

  1. 分享个昨天学的,sqlserver查表的所有列的列名,类型,长度的sql
  2. Map以及HashMap
  3. kettle An error occurred, processing will be stopped: 错误 解决方法
  4. 什么是云数据库RDS PPAS 版
  5. python中argparse模块简单使用
  6. linux下安装php的lua扩展
  7. 最长上升子序列(Longest increasing subsequence)
  8. hbase启动后HMaster几秒后死掉
  9. springboot日志框架学习------slf4j和log4j2
  10. python之time