MySQL实战:从建表设计到慢查询排查

数据量增长后,查询为何变慢?从MySQL表结构与索引设计入手,结合执行计划定位瓶颈,再理解事务、锁和备份恢复,兼顾数据读写效率与可靠性。

阅读121
发布人iPython
发布时间2026-09-24
MySQL实战:从建表设计到慢查询排查

MySQL 存储过程与函数详解:创建、变量定义及异常处理

本文详细解析 MySQL 中存储过程(Procedure)与存储函数(Function)的创建语法与核心差异。涵盖 CREATE PROCEDURE/FUNCTION 的标准结构、参数类型(IN/OUT)、DELIMITER 的使用要点,以及在代码块中声明 SQL 变量的流程。重点讲解如何处理运行时的异常情况,利用 DECLARE ... CONDITION 和 HANDLER 实现自定义的错误捕获与逻辑跳转,提升数据库操作的稳定性。

Python实现MySQL大表空间迁移与校验脚本

本文介绍使用Python编写的MySQL数据迁移脚本,旨在通过从库导出大静态表的表空间文件,并导入至目标实例。脚本涵盖表空间传输、数据同步及一致性校验流程,支持指定数据库与表名,适用于同版本MySQL实例间的高效数据迁移场景。

MySQL截取和拆分字符串函数用法详解

本文详细介绍MySQL中用于处理字符串的两个核心函数:SUBSTRING和SUBSTRING_INDEX。通过具体实例展示如何从指定位置截取子串,以及如何根据分隔符提取特定段落的值。包括单一参数使用、负数索引应用及多层嵌套组合技巧,旨在帮助开发者高效解决SQL中的字符串解析需求。

MySQL利用唯一索引与ON DUPLICATE KEY UPDATE实现UPSERT

在数据库操作中,常遇到“存在则更新,不存在则插入”的场景。通过为目标字段建立唯一索引,并配合 INSERT ... ON DUPLICATE KEY UPDATE 语句,可一次性完成判断逻辑。本文详解其SQL写法、前置条件及注意事项,避免低效的查询后插入流程。

MySQL利用唯一索引与ON DUPLICATE KEY UPDATE实现UPSERT

Django连接MySQL数据库完整指南

本文详细介绍在Django项目中连接MySQL数据库的完整流程。从终端安装pymysql驱动开始,到在__init__.py中注册驱动,再到settings.py中配置DATABASES参数,最后执行迁移命令。同时提供IDE查看数据库的方法,帮助开发者快速完成数据库连接与数据同步。

MySQL AS别名用法详解与实战示例

本文详细介绍MySQL中AS关键字在字段和表查询中的别名应用。通过具体SQL实例,讲解如何利用AS为表达式和表格设置别名,以便在WHERE、ORDER BY等子句中简化引用。文章强调显式使用AS以避免语法歧义,并提供连接查询中的最佳实践,帮助开发者编写更清晰高效的SQL语句。

MySQL与Lucene索引机制深度解析及应用场景对比

本文深入对比分析MySQL与Lucene的底层索引机制。MySQL基于B+Tree构建聚集与非聚集索引,适合精确匹配与范围查询;而Lucene采用倒排索引结构,通过Term Dictionary、Posting List实现高效的全文检索。文章详细剖析了两种索引在数据结构、内存消耗及联合查询上的核心差异,帮助开发者根据业务需求选择合适的数据存储与检索方案。

MySQL与Lucene索引机制深度解析及应用场景对比

MySQL Socket文件的作用与免密登录配置详解

本文详解MySQL socket文件在本地通信中的作用,重点解析如何通过指定socket路径实现多实例隔离登录及免密快捷进入数据库。文章对比了TCP/IP长连接与Unix socket短连接的性能差异,提供了利用-S参数或--socket选项进行本地认证的具体操作命令,帮助运维人员优化高频访问场景下的连接效率。

Django数据库配置与模型创建完整指南

本文详细讲解Django项目中数据库的配置流程,涵盖从安装PyMySQL、创建数据库到修改settings.py配置文件的完整步骤。重点介绍如何创建App、定义模型类,并通过makemigrations和migrate命令生成数据库表,帮助开发者快速掌握Django数据层的基础操作。

MySQL实现插入或更新:ON DUPLICATE KEY UPDATE语法详解

在MySQL中,若需实现“记录存在则更新,不存在则插入”的逻辑,可使用ON DUPLICATE KEY UPDATE子句。该语法通过触发唯一索引冲突来执行UPDATE操作,支持单字段与多字段更新,并内置针对相同值更新的优化机制,避免无效IO开销,是替代Oracle MERGE语句的高效方案。