news 2026/4/16 14:56:08

MySQL调优实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL调优实践
  • sql的书写顺序和执行顺序
SELECT[DISTINCT]字段/表达式-- 5. 筛选返回的字段FROM表名[别名]-- 1. 指定查询的数据源表[JOIN关联表[别名]ON关联条件]-- 2. 执行表关联操作WHERE过滤条件-- 3. 过滤行数据(分组前)GROUPBY分组字段-- 4. 按字段分组HAVING分组过滤条件-- 6. 过滤分组结果(分组后)ORDERBY排序字段[ASC/DESC]-- 7. 对结果集排序LIMIT/OFFSET分页参数-- 8. 限制返回行数(不同数据库关键字有差异)

mysql中的索引

  1. 主键索引(PRIMARY KEY)
  • 唯一标识表中每行数据,一张表只能有一个;
  • 主键字段非空(NOT NULL)且唯一,InnoDB 中主键索引是聚簇索引,性能最优;
  • 建议使用自增 INT/BIGINT 作为主键(避免页分裂),而非 UUID(无序,导致索引碎片)。
  1. 唯一索引(UNIQUE)
  • 保证索引列的值唯一(允许 NULL,多个 NULL 不冲突);
  • 一张表可创建多个唯一索引;
  • 适用场景:手机号、邮箱等需唯一约束的字段,既保证唯一性,又加速查询。
  1. 普通索引(INDEX)
  • 最基础的索引,无唯一性、非空约束,仅用于加速查询;
  • 一张表可创建多个,适用于频繁作为查询条件的字段(如订单表的 user_id)。
  1. 组合索引(复合索引)
  • 基于多个字段创建的索引(如INDEX idx_name_age (name, age));
  • 遵循「最左前缀原则」:查询条件需匹配索引字段的最左列开始的连续子集(如WHERE name='张三’可用,WHERE age=20不可用);
  • 适用场景:多字段联合查询(如WHERE name=‘张三’ AND age=20),减少回表次数。
  1. 前缀索引
  • 对字符串类型字段的前 N 个字符创建索引(如INDEX idx_name (name(10)));
  • 优点:减少索引占用空间,提升索引效率;
  • 缺点:无法用于排序 / 分组(若前缀长度不足);
  • 适用场景:长字符串字段(如手机号、身份证号,前几位已能区分)。
  1. 覆盖索引
  • 不是独立的索引类型,而是一种查询优化场景:索引包含查询所需的所有字段(如查询SELECT id, name FROM user WHERE age=20,若有INDEX idx_age_name (age, name),则无需回表);
  • 优点:避免回表,大幅提升查询效率;
  • 适用场景:高频查询且字段较少的场景(如列表页查询)。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 13:05:22

Pandas 相关性分析

Pandas 相关性分析 引言 在数据分析领域,Pandas 是一个不可或缺的工具。它提供了丰富的数据处理功能,其中相关性分析是数据分析的重要部分。本文将详细介绍 Pandas 相关性分析的基本概念、方法以及实际应用。 相关性分析概述 1. 什么是相关性分析? 相关性分析是研究两个…

作者头像 李华
网站建设 2026/4/16 16:24:04

超高创新!强化学习+深度学习单变量时间序列预测MATLAB代码

基于强化学习自动选择最优深度学习模型的时间序列预测。代码通过强化学习智能体在LSTM、BiLSTM、GRU三种模型中选择最佳模型,然后进行单变量时间序列预测和性能评估。 算法步骤 数据预处理阶段 • 导入数据 • 构建时间序列样本(滑动窗口方法&#xff09…

作者头像 李华
网站建设 2026/4/16 16:13:17

AI Agent:智能体的觉醒与自主智能的新纪元

目录 一、 AI Agent的灵魂:感知、推理、行动的永恒循环 二、 Agent的核心驱动力:大型语言模型与工具集成 三、 Agent的形态与应用疆域:从虚拟助手到物理世界的智能执行者 四、 Agent的实现基石:框架、模型与内存机制 五、 AI…

作者头像 李华
网站建设 2026/4/16 14:01:42

Redis分布式锁全攻略:原理、陷阱与Redisson最佳实践

在分布式系统中,分布式锁是保障数据一致性与任务互斥执行的核心手段。Redis因其高性能与广泛应用,成为最常见的分布式锁实现方案。 然而,自研Redis分布式锁暗藏诸多陷阱,如果处理不当,容易出现死锁、误删、超时等严重问题。 本文将全面解析 Redis 分布式锁的 基本原理、常…

作者头像 李华
网站建设 2026/4/16 11:07:48

Windows系统文件rasman.dll丢失损坏问题 下载方法

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/4/16 14:05:46

排序|倒序遍历|set

10.02sorthash分组class Solution { /* 变位分组 输入:["eat", "tea", "tan", "ate", "nat", "bat"], 输出: [["ate","eat","tea"],["nat","…

作者头像 李华