[特殊字符] MySQL性能参数查询总结

核心语句​

使用 SHOW STATUS语法查询服务器性能指标:

sql 复制代码
SHOW [GLOBAL|SESSION] STATUS LIKE '参数';

​常用性能参数列表​

参数名 含义说明
Connections 连接MySQL服务器的总次数
Uptime MySQL服务器已运行的时间(单位:秒)
Slow_queries 慢查询的次数(需关注优化)
Innodb_rows_read SELECT查询返回的行数
Innodb_rows_inserted INSERT操作插入的行数(批量插入仅计数一次)
Innodb_rows_updated UPDATE操作更新的行数
Innodb_rows_deleted DELETE操作删除的行数
Com_select 查询操作执行的次数
Com_insert 插入操作执行的次数(批量插入仅计数一次)
Com_update 更新操作执行的次数
Com_delete 删除操作执行的次数
  1. ​关键用途​

    1. 监控数据库负载(如连接数、运行时间)。

    2. 分析SQL执行频率(增删改查次数)。

    3. 定位性能问题(如慢查询数量、InnoDB引擎的行操作统计)。

MySQL 查询成本(Query Cost)核心笔记

一、last_query_cost 是什么

  • 定义:系统状态变量,记录上一查询的预估 I/O 成本,由查询优化器计算
  • 作用:优化器选执行计划(如索引、全表扫)的依据,对比不同计划 "成本"
  • 单位:随机数据页读取次数,代表 "完成查询预计读多少磁盘块"

二、"高成本" 查询未必慢的原因

优化器按随机 I/O 模型估算,实际执行受物理机制影响:

  1. I/O 类型差异
    • 随机 I/O:磁头频繁移动,读取零散数据页,效率低
    • 顺序 I/O:连续读取相邻数据页,效率高
    • 全表扫虽 last_query_cost 高,但触发顺序 I/O,实际执行可能很快
  2. 缓冲池(Buffer Pool)
    • 内存缓存磁盘数据页,查询优先读内存(缓存命中),无需磁盘 I/O
    • 预读机制:智能批量加载连续数据页到内存,降低实际耗时

三、实践应用要点

  1. 对比使用,而非绝对值
    加索引后,若 last_query_cost 显著下降,说明优化器认为新计划更优(通常利好性能,但不绝对)
  2. 综合判断真实性能
    结合 SHOW PROFILES(执行时间)、Innodb_buffer_pool_reads(实际磁盘读)等指标,避免仅依赖 last_query_cost

四、核心结论

优化器的 "成本模型"(理论估算)≠ 引擎的 "物理执行"(真实性能),需结合场景综合分析,last_query_cost 更适合做执行计划对比工具,而非绝对性能指标 。

相关推荐
SelectDB技术团队8 分钟前
Agent 场景动态 JSON 性能拆解:Apache Doris 比 ClickHouse 快 7 倍、比 Elasticsearch 快 2 倍
数据库·clickhouse·elasticsearch·json·apache·日志分析·apache doris
greasyfork15 分钟前
多种数据库管理混乱?Navicat Premium 17 for Mac 统一解决
数据库·mysql·macos·mac
Dream_fly_iboy41 分钟前
系统架构设计师之数据库
数据库
风和先行1 小时前
Android 数据库相关学习总结
android·数据库·学习
宠友信息1 小时前
Spring Boot与异步审核构建仿小红书源码内容发布全流程
java·数据库·spring boot·redis·mysql·oracle·uni-app
2401_873479402 小时前
如何识别代理IP和伪装流量?用IP情报工具三步穿透住宅代理伪装
网络·数据库·网络协议·tcp/ip·ip
诚信定制8392 小时前
如何启动 Redis 服务:详细步骤指南
数据库·redis·缓存
AllData公司负责人2 小时前
数据同步平台|AIIData数据中台实现MySQL、Hive、Kafka 一键接入Doris
大数据·数据库·hive·mysql·kafka·实时同步
数据库小学妹2 小时前
MySQL安全加固全流程:网络隔离、TDE加密、数据脱敏、等保合规7步实战
mysql·安全·数据脱敏·审计日志·安全加固·等保合规
Edward111111112 小时前
一AI名词
java·开发语言·数据库·学习