第十三章《优化》

第十三章《优化》

查询优化:
1.show status like ‘slow_queries’;

2.分析查询语句:
explain/desc select 语句

mysql> explain select * from user1;
±—±————±——±—–±————–±—–±——–±—–±—–±——+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
±—±————±——±—–±————–±—–±——–±—–±—–±——+
| 1 | SIMPLE | user1 | ALL | NULL | NULL | NULL | NULL | 3 | |
±—±————±——±—–±————–±—–±——–±—–±—–±——+
1 row in set (0.00 sec)

id select 语句的id号
select_type:查询语句的类型
simple:简单的查询语句
primary:主查询,最外层查询
union:连接查询
subquery:子查询

type:表示查询读取数据的方式;
const:表示只有一行数据匹配
system:该表时仅有一行数据的系统表;
eq_ref:使用到的索引时unique或者primary,子句使用了‘=’来对比索引列;
ref:使用了索引,但是索引不是unique或者primary key;
ref_or_null:mysql可以通过select语句来查询索引列包含null值的行
index_merge:使用到组合索引
range:范围查询的意思,只检索给定范围的行,子句当中‘<=’,’>=’.between
ALL:整个表进行遍历(没有使用索引)

特殊的查询语句:
1.使用like关键字的查询语句
like后面匹配字符串的第一个字符串是‘%’,即使查询的是索引,也不会使用索引;
2.子语句中有or关键字,只有or连接的两个字段都是索引字段才能使用索引;
3.select字段如果属于组合索引中的字段,我们必须使用组合索引中的最左边的索引字段,否则不适用索引;

库表结构的优化:
1.字段的数据类型
2.数据类型后面数据宽度
3.选择合适的存储引擎
4.分库分表
5.插入数据:
(1)alter table 表名 disable keys; 禁用索引
(2)禁用唯一性检查: set unique_checks=0;
(3)使用批量插入;

6.分析表
analyze table tablename
在这里插入图片描述
op:执行的操作是什么
Msg_type: 信息级别:status 正常状态 ,info信息,note注意,warning警告,error报错;
Msg_text:显示信息

检查表:
check table 表名

优化表:消除执行完删除或者更新命令后造成空间浪费
optimize table tablename

性能参数的优化:
cpu、内存、I/O优化等;
max_connections:set global max_connections=500M

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101965.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • scp命令详解

    scp命令详解

    2021年10月15日
  • 我的世界服务器怎么开启坐标显示,我的世界怎么设置坐标-坐标设置攻略「建议收藏」

    我的世界服务器怎么开启坐标显示,我的世界怎么设置坐标-坐标设置攻略「建议收藏」在我的世界中,每个玩家都有过迷路,找不到家的经历,或者是找到了资源,准备下次来采集的时候又找不到了,这时候坐标就很重要了,那么我的世界怎么设置坐标呢?跟小编一起来看看我的世界坐标设置攻略吧!我的世界坐标设置攻略在我的世界中想要设置坐标一般是指设置坐标传送点,以便快速传送。首先需要打开坐标的设置,可以在页面设置中把“显示坐标”打开,之后确认自己要传送的地点坐标,之后输入命令行/tp,如tp0…

    2022年9月23日
  • iptables 常用命令

    iptables 常用命令

    2022年3月8日
  • flashfxp v3.7 注册码[通俗易懂]

    flashfxp v3.7 注册码[通俗易懂]——–FlashFXPRegistrationDataSTART——–FLASHFXPvwBW1S4QvwAAAAC5W5MNJwXnsl73i3CxcVAAvAyagFtExUcOWnIM1FYIUWjoO864ApVwUjN7ZuK5qwgR7kCAvUx9/VBvgu360l+0BAP/CBrVoELRqaE0EF53hlNn2bsqL44DOQEJjG6O5X…

    2022年7月26日
  • django服务器_pycharm配置远程服务器解释器

    django服务器_pycharm配置远程服务器解释器可以看到,刚刚新建的test环境右边的[SSHconfiguration]中已经出现了一个服务器地址名。pycharm工具栏中的[Tools]-[StartSSHSession],如下图。这里弹出来的框就是要选择使用服务器的文件了,几个路径要搞明白。……

    2022年11月2日
  • 手机修改ntp服务器地址,手机修改ntp服务器ip地址

    手机修改ntp服务器地址,手机修改ntp服务器ip地址手机修改ntp服务器ip地址内容精选换一换本文介绍使用云手机服务时需要了解的基本概念。云手机是一台包含原生安卓操作系统,具有虚拟手机功能的云服务器,简单来说,云手机=云服务器+AndroidOS。您可以远程实时控制云手机,实现安卓APP的云端运行;也可以基于云手机的基础算力,高效搭建应用,如云游戏、移动办公、直播互娱等场景。服务器是用来提供云手机的物理服务器。云手机目前以服务器您可以直接修改虚…

    2022年5月26日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号