当前位置: 首页 > news >正文

郑州网站建设彳汉狮网络网站建设标书范本

郑州网站建设彳汉狮网络,网站建设标书范本,怎么创建免费自己的网站平台,优化设计答案四年级上册语文为什么查询速度会慢1.慢是指一个查询的响应时间长。一个查询的过程#xff1a;客户端发送一条查询给服务器服务器端先检查查询缓存#xff0c;如果命中了缓存#xff0c;则立可返回存储在缓存中的结果。否则进入下一个阶段服务器端进行SQL解析、预处理#xff0c;再由优化器…为什么查询速度会慢1.慢是指一个查询的响应时间长。一个查询的过程客户端发送一条查询给服务器服务器端先检查查询缓存如果命中了缓存则立可返回存储在缓存中的结果。否则进入下一个阶段服务器端进行SQL解析、预处理再由优化器生成对应的执行计划。MySQL根据优化器生成的执行计划调用存储引擎的API来执行查询。将结果返回给客户端2.数据访问是否向数据库请求了不需要的数据是否扫描额外的记录3.查询的方式一个复杂的查询还是多个简单的查询切分查询将大查询切分成小查询循环完成小查询分解关联查询慢查询分析问题SQL把复杂的SQL分成多个简单SQL并执行查看具体那个字段会慢区分度不高。EXPLAIN显示SQL如何使用索引的执行计划。执行计划的参数table 显示这一行的数据是关于哪张表的type 显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg、ref、range、indexhe和ALLpossible_keys 显示可能应用在这张表中的索引。如果为空没有可能的索引。可以为相关的域从WHERE语句中选择一个合适的语句key 实际使用的索引。如果为NULL则没有使用索引。很少的情况下MYSQL会选择优化不足的索引。这种情况下可以在SELECT语句中使用USE INDEXindexname来强制使用一个索引或者用IGNORE INDEXindexname来强制MYSQL忽略索引key_len 使用的索引的长度。在不损失精确性的情况下长度越短越好ref 显示索引的哪一列被使用了如果可能的话是一个常数rows 扫描请求数据的行数Extra 关于MYSQL如何解析查询的额外信息PROFILE显示SQL执行消耗系统资源的信息。查询执行的过程MySQL客户端/服务器通信协议是“半双工”的。客服端/服务器端都可以向对方发送数据但不能同时发生。所以我们无法也无须将一个消息切成小块独立来发送。这种协议没办法进行流量控制。客户端发送请求的数据包大小由参数max_allowed_packet限制。如果查询太大服务端会拒绝接受更多的数据并抛出相应的错误。服务器端返回的多个数据包客户端必须完整接受。1.查询状态 SHOW FULL PROCESSLIST mysqlSHOW FULL PROCESSLIST;Id User Host db Command Time State Info ------ ------ --------------- ------------ ------- ------ ------ -----------------------1 root localhost:61316 laravel_blog Query 0 (NULL) show FULL processlist 2 root localhost:61319 (NULL) Sleep 94 (NULL)对于一个连接或者说一个线程任何时刻都有一个状态该状态表示了MySQL当前正在做什么。2.查询缓存-- 查看缓存是否开启 query_cache_type 为 ON 表示已经开启 mysql show variables like %query_cache%; ---------------------------------------- | Variable_name | Value | ---------------------------------------- | have_query_cache | YES | | query_cache_limit | 1048576 | | query_cache_min_res_unit | 4096 | | query_cache_size | 20971520 | | query_cache_type | ON | | query_cache_wlock_invalidate | OFF | ----------------------------------------检查sql是否命中缓存。命中则检查一次用户权限后返回这个检查是通过一个对大小写敏感的哈希查找实现的。两次查询只要有一个字节的不同就会失败。否则将进入下一个阶段。当sql中有不确定的数据时则不会被缓存。例如用户自定义函数、存储函数、用户变量、临时表、mysql库中的系统表其查询结果都不会被缓存。3.查询优化语法解析器和预处理      MySQL通过关键字将sql语句进行解析并生成一颗对应的解析树。这个过程解析器主要通过语法规则来验证和解析。比如sql中是否使用了错误的关键字或者关键字的顺序是否正确等。预处理则会根据MySQL规则进一步检查解析树是否合法。比如检查要查询的数据表和数据列是否存在等。查询优化器经过前面的步骤生成的语法树被认为是合法的了并且由优化器将其转化成查询计划。多数情况下一条查询可以有很多种执行方式最后都返回相应的结果。优化器的作用就是找到这其中最好的执行计划。MySQL使用基于成本的优化器通过计算成本选择其中最小的一个。通过SHOW STATUS LIKE Last_query_cost;查看成本。成本的最小单位是随机读取一个4K数据页的成本。MySQL的查询优化器是一个非常复杂的部件它使用了非常多的优化策略来生成一个最优的执行计划重新定义关联表的顺序将外连接转化成内连接使用等价变换规则优化count、min、max预估并转化为常数表达式覆盖索引描述子查询优化提前终止查询等值传播列表IN的比较    上面列举了一些随着MySQL的不断发展优化器使用的优化策略也在不断的进化。 查询执行引擎在完成解析和优化阶段以后MySQL会生成对应的执行计划查询执行引擎根据执行计划给出的指令逐步执行得出结果。整个执行过程的大部分操作均是通过调用存储引擎实现的接口来完成这些接口被称为handler API。查询过程中的每一张表由一个handler实例表示。实际上MySQL在查询优化阶段就为每一张表创建了一个handler实例优化器可以根据这些实例的接口来获取表的相关信息包括表的所有列名、索引统计信息等。存储引擎接口提供了非常丰富的功能但其底层仅有几十个接口这些接口像搭积木一样完成了一次查询的大部分操作。返回结果查询执行的最后一个阶段就是将结果返回给客户端。即使查询不到数据MySQL仍然会返回这个查询的相关信息比如该查询影响到的行数以及执行时间等。如果查询缓存被打开且这个查询可以被缓存MySQL也会将结果存放到缓存中。结果集返回客户端是一个增量且逐步返回的过程。有可能MySQL在生成第一条结果时就开始向客户端逐步返回结果集了。这样服务端就无须存储太多结果而消耗过多内存也可以让客户端第一时间获得返回结果。需要注意的是结果集中的每一行都会以一个满足①中所描述的通信协议的数据包发送再通过TCP协议进行传输在传输过程中可能对MySQL的数据包进行缓存然后批量发送。以上内容希望帮助到大家很多PHPer在进阶的时候总会遇到一些问题和瓶颈业务代码写多了没有方向感不知道该从那里入手去提升对此我整理了一些资料包括但不限于分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6laravelYII2RedisSwoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家需要戳这里PHP进阶架构师视频、面试文档免费获取或 者关注我每天分享技术文章PHP架构师之路​www.zhihu.com
http://www.zqtcl.cn/news/60180/

相关文章:

  • 网站不备案可以登录吗秦皇岛短视频优化
  • 网站维护多久能好烟酒网上商城
  • 深圳市珠宝网站建设网站运营的含义是什么
  • 做影视网站不备案怎么发布自己的网站
  • 自己怎么建立网站网页设计框架代码
  • 购物网站网页设计wordpress如何跳转页面步骤
  • 网站可访问性如何制作一个公司网站
  • 网站建设 6万贵不贵wordpress数据写入数据库表
  • 有哪些网站可以做图片打赏个人网站网址
  • 做兼职编辑的网站湖南涟钢建设有限公司网站
  • 重庆市工程建设招投标交易中心网站网站广告销售怎们做
  • 重庆快建网站德惠网站建设
  • 做药物分析必须知道的网站域名购买网站有哪些问题
  • 做站群的网站要备案吗半岛建设公司网站
  • 山西公司网站开发2018年网站建设
  • 购物平台排行榜2021南京网站seo找行者seo
  • 公司网站开发需要多少钱有深度的公司名字
  • 自建站跨境电商网站建设怎么让百度搜索到
  • php网站开发怎么接私活网站源码超市 下载
  • 坪山企业网站建设网站维护需要学什么
  • 重庆专业网站建设首页排名聊城找个人做网站
  • 威海做网站的公司有哪些vpswindows野外大全
  • 搜索引擎网站排名深圳婚纱摄影网站建设
  • 那个相亲网站做的比较好平面设计师如何做网站
  • 网站开发和前端是一样吗wordpress顺序
  • 无锡网站建设详细内容最近2018中文字幕免费看2019
  • 迪虎科技网站建设最有名的免费建站平台排行榜
  • 陕西网站建设厦门网站制作网站建设中系统实现
  • 西宁市营销网站建设公司怎么注册公司域名
  • 部署一个网站要做哪些工作平台页面设计