在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一. 慢查询日志 1.1 MySQL的日志类型 日志用于记录数据库的运行情况,以及用户对数据库执行的各类操作。当数据库发生故障时,可以根据日志分析和解决问题,从而对数据库进行恢复。 1.2 认识慢查询日志 慢查询日志用于记录MySQL数据库中响应时间超过指定阈值的语句。慢查询日志通常也被称之为慢日志,因为它不仅仅只针对 1.3 如何开启慢查询日志命令 慢查询日志可以通过命令临时设置,也可以修改配置文件永久设置。 查看是否开启慢查询日志 show variables like 'slow%'; 临时开启慢查询日志 set slow_query_log='ON'; set long_query_time=1; 慢查询日志文件所在位置 show variables like '%datadir%'; 二. 查询分析器——EXPLAIN 2.1 explain简介 explain命令可以查看SQL语句的执行计划。当explain与SQL语句一起使用时,MySQL将显示来自优化器的有关语句执行计划的信息。也就是说,MySQL解释了它将如何处理语句,包括有关如何联接表以及以何种顺序联接表的信息。 explain能做什么?
2.2 explain的使用 explain的使用很简单,只需要在SQL语句之前加上 命令解释: 三. 索引的基本使用 3.1 什么是索引 索引是一种特殊的数据结构,类似于图书的目录,它能够极大地提升数据库的查询效率。如果没有索引,在查询数据时必须扫描表中的所有记录才能找出符合条件的记录,这种全表扫描的查询效率非常低。 总结:提高查询效率,就好像垃圾分类一样,把一样效果的东西放在一起,找的时候好找。 3.2 常见的索引种类 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定记录。 数据库的索引好比一本书的目录,能够加快数据库的查询速度;索引是快速搜索的关键,如果不加索引,查找任何一条特定的数据都会进行一次全表扫描。 3.3 索引的使用 创建索引 创建普通索引 CREATE INDEX indexName ON tableName(columnName(length)); 创建唯一索引 CREATE UNIQUE INDEX indexName ON tableName(columnName(length)); 创建复合索引 CREATE INDEX indexName ON tableName(columnName1, columnName2, …); 删除索引 DROP INDEX [indexName] ON tableName; 查看索引 SHOW INDEX FROM tableName; 3.4 索引的实战经验 四. 复合索引前导列特性 复合索引前导列特性:在MySQL中,如果创建了复合索引 列: 未使用索引 select * from employee where salary=8800; select * from employee where dept='部门A'; select * from employee where salary=8800 and dept='部门A'; 使用索引:前面都带有name select * from employee where name='liufeng'; select * from employee where name='liufeng' and salary=8800; select * from employee where name='liufeng' and salary=8800 and dept='部门A'; 五. 覆盖索引 5.1 什么是覆盖索引 覆盖索引又称之为索引覆盖,即 关于覆盖索引的几点说明:
5.2 如何判断使用了覆盖索引 当一个查询使用了覆盖索引,在查询分析器 到此这篇关于MySQL 各个索引的使用详解的文章就介绍到这了,更多相关MySQL 索引使用内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! 本人博客:https://blog.csdn.net/weixin_46654114 |
请发表评论