范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

MySQLSQL和索引优化总结

  文章目录
  一、SQL语句和索引的优化
  二、应用优化
  三、MySQL Server优化
  1. 自适应哈希索引
  2. redo log
  3. MySQL查询缓存
  4. MySQL线程缓存
  5. 并发连接数量和超时时间
  首先我们需要知道MySQL主要是从以下3个方面进行优化:
  SQL语句和索引
  应用优化(引入缓存、连接池)
  配置参数优化
  一、SQL语句和索引的优化
  当数据量比较大,若SQL语句写的不合适,会导致SQL的执行效率低,我们需要等待很长时间才能拿到结果
  针对性优化的时候,若数据量太大,可通过limit分页
  explain分析的时候可能出现以下问题:
  没有用索引
  用多列索引没有用到第一列,导致没用到索引
  联合查询的大小表设置不合理,导致索引没用上(小表是整表查询,大表才用索引)
  多表查询不用in(产生中间表),用外连接替代带in子查询的过程,合理使用索引
  二、应用优化
  除了优化SQL和索引,在实际生产环境中,由于数据库服务器本身的性能局限,就必须要对上层的应用来进行一些优化,使得上层应用访问数据库的压力能够减到最小
  引入数据库连接池;防止客户端不断三次握手建立连接,四次挥手关闭连接,耗费网络以及服务器资源,我们可以引入数据库连接池,这是高并发场景下常用的一种优化手段
  引入缓存;用于存储热点数据,如果客户端的请求来了,先在redis上查一下(redis是基于内存的数据库),如果redis上直接查到就不经过MySQL数据库,如果没有查到就去访问MySQL数据库,访问MySQL完成后,先把当前访问的数据往redis上缓存一下,再把结果返回给用户
  引入redis缓存的话,也会有一些附带的问题:缓存数据一致性问题,缓存穿透和缓存雪崩等等
  三、MySQL Server优化
  对于MySQL Server端的优化,主要指的是MySQL Server启动时加载的配置文件(my.ini或my.cnf)中配置项的优化
  1. 自适应哈希索引
  由于hash索引的生成和维护也是耗费性能的,通过以下命令查看自适应哈希索引搜索的频率低于使用二级索引树搜索的频率:
  show engine innodb statusG
  1
  如果使用自适应哈希索引搜索的频率较低,可以通过变量innodb_adaptive_hash_index关闭自适应哈希索引   2. redo log   可以设置InnoDB log buffer大小(redo log缓存的大小),Innodb_buffer_pool_size(缓存的大小),来减少磁盘I/O次数,因为缓存区大了,在缓冲区工作的时间就长了,redo log的效率就高了。   my.cnf配置参数如下:   3. MySQL查询缓存   MySQL的查询缓存是把上一次select的查询结果记录下来放在缓存当中,下一次再查询相同内容的时候,直接从缓存中取出来就可以了,不用再进行一遍真正的SQL查询(在内存中划分一块空间用做缓存的地方)   查询缓存适用于更新不频繁的表,查询频繁的表,因为当两个select查询中间出现insert,update,delete语句的时候,查询缓存就会被清空,过多的查询缓存的数据添加和删除,就会影响MySQL的执行效率,可能还不如每次都从磁盘上查询   可以通过以下命令,来查看查询缓存的设置:   如果某个表的查询多而更改少,可以考虑开启查询缓存   通过show status命令,可以查看MySQL查询缓存的使用状况,如下:   可以通过set命令设置上面的缓存参数开启MySQL查询缓存功能,也可以找到MySQL的配置文件(windows是my.ini,linux是my.cnf),修改query_cache_type参数为1就可以了,然后重启MySQL Server就可以使用了,如下:   MySQL查询缓存还是不如使用redis,这是MySQL的查询缓存,我们作为MySQL服务的使用者来说,控制不了MySQL的缓存方式,如果我们引入redis的话,可以通过redis提供的API精确控制要缓存的数据,以及不缓存的数据   4. MySQL线程缓存   主要指配置文件中thread_cache_size配置项。   MySQL Server网络模块采用经典的select I/O复用+线程池模型,之所以引入线程池,主要就是为了在业务执行的过程中,不会因为临时创建和销毁线程,造成系统性能降低,因为线程的创建和销毁是很耗费性能的。   线程池就是在业务使用之前,先创建一组固定数量的线程,等待事件发生,当有SQL请求到达MySQL Server的时候,在线程池中取一个线程来执行该SQL请求就可以了,执行完成后,不销毁线程,而是把线程再归还到线程池中,等待下一次任务的处理(线程池的线程数量随着请求越来越多,是可以动态增加的)   配置完thread_cache_size,重启MySQL Server服务后即可生效   5. 并发连接数量和超时时间   MySQL Server作为一个服务器,可以设置客户端的最大连接量和连接超时时间,如果数据库连接统计数量比较大,这两个参数的值需要设置大一些   在配置文件(my.cnf或my.ini)最下面,添加配置:max_connections=1000,然后重启MySQLServer,配置生效   MySQL Server对于长时间未通信的连接,会主动关闭连接。设置超时时间,超过设置时间没有请求就主动断开,单位是秒,在配置文件中添加配置:wait_timeout = 600   原问链接:https://blog.csdn.net/qq_42500831/article/details/123799244?spm=1001.2100.3001.7377&utm_medium=distribute.pc_feed_blog_category.none-task-blog-classify_tag-15.nonecase&depth_1-utm_source=distribute.pc_feed_blog_category.none-task-blog-classify_tag-15.nonecase   需要更多Java资料的可以关注我免费领取!

爱奇艺奇遇3免费游戏4kPlus带来超清虚拟世界元宇宙初体验对于一部分朋友来说,日常休闲的时候不喜欢出门社交,也不想在家瘫着看电视,而是喜欢沉浸在VR虚拟世界,暂时逃离现实世界的纷扰。也因此有人大胆断言,元宇宙会是我们这辈以及下一代人的精神力争产值超400亿元!广西重点发展新能源电池材料等新材料特色产业近日,自治区工业和信息化厅出台广西新材料产业倍增发展实施方案(以下简称方案),计划重点发展包括新能源电池材料在内的一批新材料特色产业。到2023年,新材料产业新增规上企业20家,力申通快递抛员工持股计划2。36亿回购股份白菜价售予124人总经理王文彬刚入职一年却成最大赢家21世纪经济报道记者杨坪深圳报道在借壳上市五年后,申通快递发布了首份员工持股计划,拟将回购股票以每股1元的价格卖给员工,以此完善利益共享机制,增强凝聚力。刚刚过去的2021年,预计2022年春节后买手机,懂行的人都推荐这3款,高价低配才是首选很多时候身边朋友们总想换高端旗舰机玩玩,特别是国产的品牌,其实想想如今国产旗舰机的配置都是不尽相同,即使更新迭代,大多数的配置都是差不多,创新极少,还内卷抬价,让不少朋友们花了大钱摄影师朋友,是什么原因让你不愿放弃笨重的全画幅单反的?没觉得单反重,很好用。画质也相当好,所以坚持使用到如今。因为单反专业,有耐候行。从来没觉得单反沉的拿不动了,单反设计更专业抗造耐用,电池在寒冷环境一样好使,身边有不少用微单相机,经消灭医药代表后行业巨变!柏煜未来医药电商只会剩下这两类公司柏煜判断,近两年发生巨变的医药电商行业,未来会剩下两类公司一类是寡头,比如京东阿里美团等一类是细分垂直型企业,比如聚焦于某一细分品类,或把某一病种做深做透的产品服务型公司。文中国企耳机孔不是只能听歌!好百邻月嫂教你3个隐藏技能手机已经是我们日常生活和工作必不可少的东西了,我们都知道手机上有很多的孔,最常见的就是耳机孔了,很多人都喜欢用手机来听歌。但是你知道吗?手机上的耳机孔除了插耳机外,其实还隐藏着三个让你轻松获得重装Win10系统的技能今天我们将介绍,如何从戴尔官网下载制作USB恢复介质并进行系统重装。并非所有机器都支持此方法,如提示恢复镜像不可用,则建议参考从微软官网下载系统镜像重装教程。注意在开始操作前,务必国产手机冲上七八千段位,iPhone13却玩起了价格战,赢得了好感进入智能手机时代,国产手机的发展势头一直很好,尤其是小米,以性价比著称,为普及智能手机做出了很大的贡献。后来在一些别有用心的人的呐喊下,一些人认为低价手机不高端。高端手机就得跟苹果荣耀旗舰怒降800元,骁龙888256GB,力拼iPhone13最近手机圈最火热的机型,毫无疑问就是刚刚发布的iPhone13系列了,不得不说,今年的iPhone13系列是真的很给力,相比去年的iPhone12系列可以说的加料不加价的说。而且iiPhone12ProMax最新价格确认,直降1700元,128GB版本售价亲民售价过万的手机在手机行业中并不算很多,因为手机厂商们制造手机肯定还是想要卖出去,而售价过万的手机想要卖出去相对而言就比较困难,毕竟1万元对于绝大多数普通消费者而言都是一部不小的数目
这5件鸡肋家居用品,你都不舍得扔,谈什么精致生活现在有很多人都在进行精致生活,但是也有很多人喜欢勤俭持家,这是中国的传统美德!但如果你什么都不扔,家里还有地方用吗?其实勤俭持家的最终目的,就是提高我们的生活品质。我们需要扔掉已经房子不一定要大,若想看起来上档次,这两个地方多费点钱如果你现在买房子,是不是越大越好呢?很多人都是这样的想法,其实大家的房子很招人喜欢!但如果你家人口不多的话,建议买小一点,不然看着空洞洞的房间,没有人气很失落的。房子不一定要大,若冰箱应该怎么选?十字开门对比对开门,终于知道答案了冰箱作为家里必不可少的电器,每次买回家的食材和瓜果都会放在冰箱里。现在市面上的品牌和款式非常多,很多人看得眼都花了,不知道如何选!其实很多人都在纠结,十字开门和双开门到底哪个更好一马桶内壁上的黄渍很难清洁?试试这样做,马桶洁净如新,非常管用卫生间是我们生活当中必不可少的场所,从早到晚都会上厕所,如果在这个时候,发现厕所不干净,会影响我们的心情差,影响我们的工作!所以有一个干净整洁的马桶,非常的重要!但是长时间的使用,马桶作为卫生间的核心区,上不上档次,关键看这3个小细节马桶作为家庭卫生间必不可少的卫具,是卫生间最核心的位置。但是马桶周边的卫生情况很让人头大!如果做不好,那么卫生间就会弄得很邋遢!其实想要卫生间干净整洁,也很简单,只要经这三个小细节4个代表富裕的家居物件,有两个以上,说明你家属于有钱人现在人们的生活水平普遍提高,很多家庭都开始进入精致生活!这简单的就可以注意到很多家庭的居家卫生更干净整洁了!最主要的就是因为很多居家主妇都在使用好用的家居物件,可以减少很多家务负担为什么吉祥时刻就想要喝王老吉?在同质化的竞争中,品牌符号能够帮助人们快速识别品牌,甚至做购买决策。而在现在品牌竞争激烈且同质化严重的今天,具有辨识度的品牌符号能够将品牌价值观植入到用户心里,让独特的品牌符号为品卫生间这4个地方不要空着,用心设计下,可以腾出很多空间很多精致的女人都喜欢经家里收拾得干干净净。特别是家里使用频率最高的卫生间,每次都要把它清洗干净,整洁,无异味。这样可以让生活更温馨!卫生间这4个地方不要空着,用心设计下,可以腾出很日本人设计的这些家居小用品,中国人难以理解,但实用性很强不得不佩服日本人的设计能力,特别是日本的家庭主妇,她们总是会用各种各样的小玩意解决居家难题,开始我们很难理解,但是用过之后,真的实用性非常强!并不是我崇洋媚外,而是想要借鉴他们的好洗衣服不要只倒洗衣液!教你正确做法,洗衣干净又卫生现在智能居家走进生活,特别是洗衣服,很多人都在用洗衣机洗,但是往往很多顽固的污渍清洗不干净,会导致很多昂贵的衣服也要需要手洗,但是很多人洗衣服只会使用洗衣液,这样是洗不干净的,教你厨房也可以成网红!这4个最受欢迎的家居小用品,你用过几个?如今的网红非常多,就连厨房也可以成网红,比如这四个最受欢迎的家居小物品,你用过几个?1防溅水龙头大家出门都有水龙头,但是普通的水龙头缺点很多。比如用的时候控制不住水,四处喷溅,一不