【Java】使用Druid连接池的监控面板排查慢SQL
默认在后台服务的地址:
http://localhost:8078/druid/login.html
账号信息放在配置文件中获取:
server:
port: 8078 spring:
datasource:
druid:
stat-view-servlet:
loginUsername: admin # 访问druid监控界面的用户名密码
loginPassword: 123456
max-pool-prepared-statement-per-connection-size: 20
filters: stat,wall
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
starter依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
登陆后,主要看这两个功能:

【SQL监控】和【URI监控】
URI监控可以查看接口响应的情况:
可以对每个字段进行排序操作,要查看响应最慢的接口,倒序【请求最慢】的字段即可

其次是查看【SQL监控】
在这里查看慢SQL:

点击后可以查看SQL,但是没有参数,只有占位符

分析慢SQL的做法是看SQL执行计划:
MySQL使用Explain关键字:
mysql> EXPLAIN
SELECT *
FROM `ymcd_aisw`.`aisw_merchant`
WHERE merchant_no = 'AISW-36072521169083';
+----+-------------+---------------+------+-----------------+-----------------+---------+-------+------+-----------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+---------------+------+-----------------+-----------------+---------+-------+------+-----------------------+
| 1 | SIMPLE | aisw_merchant | ref | IDX_MERCHANT_NO | IDX_MERCHANT_NO | 63 | const | 1 | Using index condition |
+----+-------------+---------------+------+-----------------+-----------------+---------+-------+------+-----------------------+
1 row in set (0.04 sec)
Oracle使用PL\SQL工具创建SQL执行计划:
Plan Hash Value : 3262553821 ------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost | Time |
------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | | 68 | 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | | |
| 2 | TABLE ACCESS FULL | TE_NONLIVING | 15024 | | 68 | 00:00:01 |
------------------------------------------------------------------------------

PostgreSQL使用关键字Explan Analyze:
postgres=# explain analyze
SELECT name FROM test WHERE id = 10000; QUERY PLAN
-----------------------------------------------------------------------------------------------------------------------
Gather (cost=1000.00..107139.34 rows=1 width=11) (actual time=1.020..708.268 rows=1 loops=1)
Workers Planned: 2
Workers Launched: 2
-> Parallel Seq Scan on test (cost=0.00..106139.24 rows=1 width=11) (actual time=449.350..683.611 rows=0 loops=3)
Filter: (id = 10000)
Rows Removed by Filter: 3333333
Planning Time: 0.169 ms
Execution Time: 708.320 ms
(8 rows)
【Java】使用Druid连接池的监控面板排查慢SQL的更多相关文章
- Druid连接池及监控在spring中的配置
Druid连接池及监控在spring配置如下: <bean id="dataSource" class="com.alibaba.druid.pool.DruidD ...
- spring配置druid连接池和监控数据库访问性能
Druid连接池及监控在spring配置如下: <bean id="dataSource" class="com.alibaba.druid.pool.DruidD ...
- Spring学习总结(12)——Druid连接池及监控在spring配置
Druid连接池及监控在spring配置如下: <bean id="dataSource" class="com.alibaba.druid.pool.DruidD ...
- springboot+druid连接池及监控配置
1. 问题描述 阿里巴巴的数据库连接池Druid在效率与稳定性都很高,被很多开发团队使用,并且自带的Druid监控也很好用,本章简单介绍下springboot+druid配置连接池及监控. 2. 解决 ...
- Spring系列之集成Druid连接池及监控配置
前言 前一篇文章我们熟悉了HikariCP连接池,也了解到它的性能很高,今天我们讲一下另一款比较受欢迎的连接池:Druid,这是阿里开源的一款数据库连接池,它官网上声称:为监控而生!他可以实现页面监控 ...
- Druid连接池基本配置及监控配置
1.配置Druid连接池,监控慢sql <!-- 数据源配置, 使用 Druid 数据库连接池 --> <bean name="dataSource" class ...
- SpringBoot2.0 基础案例(07):集成Druid连接池,配置监控界面
一.Druid连接池 1.druid简介 Druid连接池是阿里巴巴开源的数据库连接池项目.Druid连接池为监控而生,内置强大的监控功能,监控特性不影响性能.功能强大,能防SQL注入,内置Login ...
- 六:SpringBoot-集成Druid连接池,配置监控界面
SpringBoot-集成Druid连接池,配置监控界面 1.Druid连接池 1.1 Druid特点 2.SpringBoot整合Druid 2.1 引入核心依赖 2.2 数据源配置文件 2.3 核 ...
- spring 5.x 系列第6篇 —— 整合 mybatis + druid 连接池 (代码配置方式)
源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 项目目录结构 1.创建maven工程,除了Spring基本依赖外,还需要导 ...
- spring 5.x 系列第5篇 —— 整合 mybatis + druid 连接池 (xml配置方式)
源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 项目目录结构 1.创建maven工程,除了Spring基本依赖外,还需要导 ...
随机推荐
- Vue 3 Teleport:掌控渲染的艺术
title: Vue 3 Teleport:掌控渲染的艺术 date: 2024/6/5 updated: 2024/6/5 description: 这篇文章介绍了Vue3框架中的一个创新特性--T ...
- C#.NET 国密 SM2 公钥证书从文本转换
先前的 Util 是直接从文件中转换的 https://www.cnblogs.com/runliuv/p/15079404.html public static AsymmetricKeyParam ...
- [笔记]Git常用命令大全
Tips:当你看到这个提示的时候,说明当前的文章是由原emlog博客系统搬迁至此的,文章发布时间已过于久远,编排和内容不一定完整,还请谅解` [笔记]Git常用命令大全 日期:2018-6-16 阿珏 ...
- vue2 实现可拖拽悬浮球
实现效果 相关代码 点击查看代码 <template> <div class="float-box"> <div class="button ...
- WebUI测试-获取html页面表格数据并存到Excel中
from selenium.webdriver.support import expected_conditions as EC import pandas as pd table=WebDriver ...
- Java基础(二)继承剖析
继承剖析 1 若是要直接调用父类的构造方法,不调用子类的方法则需要使用的是super()关键字 Publicclass Child extends Parent { Public C ...
- KEIL5 编译生成 hex、bin文件
--- title: file_name date: 2020-05-31 10:27:10 categories: tags: - stm32 - keil - config --- KEIL 工程 ...
- P2045 方格取数加强版题解
题目链接:P2045 方格取数加强版 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目: 出一个 n*n 的矩阵,每一格有一个非负整数 A{i,j}且A{i,j} <=10 ...
- 3568F-Linux应用开发手册
- 实测52.4MB/s!全国产ARM+FPGA的CSI通信案例分享!
CSI总线介绍与优势 CSI(CMOS sensor parallel interfaces)总线是一种用于连接图像传感器和处理器的并行通信接口,应用于工业自动化.能源电力.智慧医疗等领域,CSI总线 ...