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

openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时间运行的问题

文章目录

    • openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时间运行的问题
      • 194.1 分析查询语句长时间运行的问题
        • 194.1.1 问题现象
        • 194.1.2 原因分析
        • 194.1.3 处理办法

openGauss学习笔记-194 openGauss 数据库运维-常见故障定位案例-分析查询语句长时间运行的问题

194.1 分析查询语句长时间运行的问题

194.1.1 问题现象

系统中部分查询语句运行时间过长。

194.1.2 原因分析
  • 查询语句较为复杂,需要长时间运行。
  • 查询语句阻塞。
194.1.3 处理办法
  1. 以操作系统用户omm登录主机。

  2. 使用如下命令连接数据库。

    gsql -d postgres -p 8000
    

    postgres为需要连接的数据库名称,8000为端口号。

  3. 查看系统中长时间运行的查询语句。

    SELECT timestampdiff(minutes, query_start, current_timestamp) AS runtime, datname, usename, query FROM pg_stat_activity WHERE state != 'idle' ORDER BY 1 desc;
    

    注意:该函数仅在openGauss兼容MY类型时(即dbcompatibility = ‘B’)有效,其他类型不支持该函数。

    查询会返回按执行时间长短从大到小排列的查询语句列表。第一条结果就是当前系统中执行时间长的查询语句。

    如果当前系统较为繁忙,可以使用TIMESTAMPDIFF函数通过限制current_timestamp和query_start大于某一阈值查看执行时间超过此阈值的查询语句。timestampdiff的第一个参数为时间差单位。例如,执行超过2分钟的查询语句可以通过如下语句查询。

    SELECT query FROM pg_stat_activity WHERE timestampdiff(minutes, query_start, current_timestamp) > 2;
    
  4. 分析长时间运行的查询语句状态。

    • 如果查询语句处于正常状态,则等待其执行完毕。
    • 如果查询语句阻塞,请参见分析查询语句是否被阻塞处理。

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

图片

http://www.lryc.cn/news/278302.html

相关文章:

  • GoLang:gRPC协议的介绍以及详细教程,从Protocol开始
  • LeetCode-2645. 构造有效字符串的最少插入数
  • ssm+vue的城投公司企业人事管理系统设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。
  • nginx基础面试题以及配置文件解析和命令控制
  • 全自动网页生成系统网站源码重构版
  • 【算法每日一练]-动态规划 (保姆级教程 篇16) #纸带 #围栏木桩 #四柱河内塔
  • Grounding 模型 + SAM 报错
  • linux 网络基础配置
  • leetcode-相同的树
  • Leetcode17-好数对的数目(1512)
  • Ubuntu22.04开机左上角下划线闪烁不开机
  • 提升测试多样性,揭秘Pytest插件pytest-randomly
  • C++学习笔记(三十二):c++ 堆内存与栈内存比较
  • 探索Shadowsocks-Android:保护你的网络隐私
  • 蓝桥杯练习题(二)
  • 将文本文件导入Oracle数据库的简便方法:SQL Developer
  • Mac iTerm2 配置
  • R语言下载安装及VScode配置
  • 【hyperledger-fabric】部署Java应用远程访问智能合约
  • SpringBoot 调用mybatis报错:Invalid bound statement (not found):
  • PHP开发日志 ━━ 不同方法判断某个数组中是否存在指定的键名,测试哪种方法效率高
  • 【pytorch学习】 深度学习 教程 and 实战
  • js中和Vue中的事件委托(事件代理)的实现方法
  • C++学习笔记——对象的指针
  • QT5.14 实现ModbusTCP客户端 Demo
  • c++析构函数
  • nodejs 服务端token 高效缓存验证
  • C++内存管理机制(侯捷)笔记2
  • java基础之异常练习题
  • 智慧旅游景区解决方案:PPT全文49页,附下载