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

音乐网站建设成本服装网站建设风格

音乐网站建设成本,服装网站建设风格,网站开发毕业设计任务书,wordpress用户注册邮件内容自定义1、什么是MySQL执行计划 要对执行计划有个比较好的理解#xff0c;需要先对MySQL的基础结构及查询基本原理有简单的了解。 MySQL本身的功能架构分为三个部分#xff0c;分别是 应用层、逻辑层、物理层#xff0c;不只是MySQL #xff0c;其他大多数数据库产品都是按这种架构…1、什么是MySQL执行计划 要对执行计划有个比较好的理解需要先对MySQL的基础结构及查询基本原理有简单的了解。 MySQL本身的功能架构分为三个部分分别是 应用层、逻辑层、物理层不只是MySQL 其他大多数数据库产品都是按这种架构来进行划分的。 应用层主要负责与客户端进行交互建立链接记住链接状态返回数据响应请求这一层是和客户端打交道的。 逻辑层主要负责查询处理、事务管理等其他数据库功能处理以查询为例。 首先接收到查询SQL之后数据库会立即分配一个线程对其进行处理第一步查询处理器会对SQL查询进行优化优化后会生成执行计划然后交由计划执行器来执行。 计划执行器需要访问更底层的事务管理器存储管理器来操作数据他们各自的分工各有不同最终通过调用物理层的文件获取到查询结构信息将最终结果响应给应用层。 物理层实际物理磁盘上存储的文件主要有分文数据文件日志文件。 通过上面的描述生成执行计划是执行一条SQL必不可少的步骤一条SQL性能的好坏可以通过查看执行计划很直观的看出来执行计划提供了各种查询类型与级别方便我们进行查看以及为作为性能分析的依据。 2、如何分析执行计划 MySQL为我们提供了 explain 关键字来直观的查看一条SQL的执行计划。 explain显示了MySQL如何使用索引来处理select语句以及连接表可以帮助选择更好的索引和写出更优化的查询语句。 下面我们使用 explain 做一个查询如下 查询结构中有12列理解每一列的含义对理解执行计划至关重要下面进行说明。 1.id SELECT识别符这是SELECT的查询序列号。 2.select_type SELECT类型,可以为以下任何一种: SIMPLE:简单SELECT(不使用UNION或子查询) PRIMARY:最外面的SELECT UNION:UNION中的第二个或后面的SELECT语句 DEPENDENT UNION:UNION中的第二个或后面的SELECT语句,取决于外面的查询 UNION RESULT:UNION 的结果 SUBQUERY:子查询中的第一个SELECT DEPENDENT SUBQUERY:子查询中的第一个SELECT,取决于外面的查询 DERIVED:导出表的SELECT(FROM子句的子查询) 3.table 输出的行所引用的表 4.partitions 如果查询是基于分区表的话显示查询将访问的分区。 5.type 联接类型。下面给出各种联接类型,按照从最佳类型到最坏类型进行排序: system:表仅有一行(系统表)。这是const联接类型的一个特例。 const:表最多有一个匹配行,它将在查询开始时被读取。因为仅有一行,在这行的列值可被优化器剩余部分认为是常数。const表很快,因为它们只读取一次! eq_ref:对于每个来自于前面的表的行组合,从该表中读取一行。这可能是最好的联接类型,除了const类型。 ref:对于每个来自于前面的表的行组合,所有有匹配索引值的行将从这张表中读取。 ref_or_:该联接类型如同ref,但是添加了MySQL可以专门搜索包含NULL值的行。 index_merge:该联接类型表示使用了索引合并优化方法。 unique_subquery:该类型替换了下面形式的IN子查询的ref: value IN (SELECT primary_key FROM single_table WHERE some_expr) unique_subquery是一个索引查找函数,可以完全替换子查询,效率更高。 index_subquery:该联接类型类似于unique_subquery。可以替换IN子查询,但只适合下列形式的子查询中的非唯一索引: value IN (SELECT key_column FROM single_table WHERE some_expr) range:只检索给定范围的行,使用一个索引来选择行。 index:该联接类型与ALL相同,除了只有索引树被扫描。这通常比ALL快,因为索引文件通常比数据文件小。 ALL:对于每个来自于先前的表的行组合,进行完整的表扫描说明查询就需要优化了。 一般来说得保证查询至少达到range级别最好能达到ref。 6.possible_keys 指出MySQL能使用哪个索引在该表中找到行 7.key 显示MySQL实际决定使用的键(索引)。如果没有选择索引,键是NULL。 8.key_len 显示MySQL决定使用的键长度。如果键是NULL,则长度为NULL。在不损失精确性的情况下长度越短越好 9.ref 显示使用哪个列或常数与key一起从表中选择行。 10.rows 显示MySQL认为它执行查询时必须检查的行数。多行之间的数据相乘可以估算要处理的行数。 11.filtered 显示了通过条件过滤出的行数的百分比估计值。 12.Extra 该列包含MySQL解决查询的详细信息 Distinct:MySQL发现第1个匹配行后,停止为当前的行组合搜索更多的行。 Select tables optimized away MySQL根本没有遍历表或索引就返回数据了表示已经优化到不能再优化了 Not exists:MySQL能够对查询进行LEFT JOIN优化,发现1个匹配LEFT JOIN标准的行后,不再为前面的的行组合在该表内检查更多的行。 range checked for each record (index map: #):MySQL没有发现好的可以使用的索引,但发现如果来自前面的表的列值已知,可能部分索引可以使用。 Using filesort:MySQL需要额外的一次传递,以找出如何按排序顺序检索行说明查询就需要优化了。 Using index:从只使用索引树中的信息而不需要进一步搜索读取实际的行来检索表中的列信息。 Using temporary:为了解决查询,MySQL需要创建一个临时表来容纳结果说明查询就需要优化了。 Using where:WHERE 子句用于限制哪一个行匹配下一个表或发送到客户。 Using sort_union(…), Using union(…), Using intersect(…):这些函数说明如何为index_merge联接类型合并索引扫描。 Using index for group-by:类似于访问表的Using index方式,Using index for group-by表示MySQL发现了一个索引,可以用来查 询GROUP BY或DISTINCT查询的所有列,而不要额外搜索硬盘访问实际的表。
http://www.w-s-a.com/news/347877/

相关文章:

  • 安装网站到服务器合肥建设干部学校网站
  • 影视网站如何做销售案例网站
  • 建设网站对比方案龙岗网站开发公司
  • 网站开发标准网站建设公司兴田德润可信赖
  • 如何建设一个公众号电影网站自动seo优化
  • 个人网站能备案吗酱香拿铁采取了哪些网络营销方式
  • 网站建设及推广好做吗自己做的网站加入购物车价格
  • 涡阳在北京做网站的名人注册一个免费的网站
  • 三门峡建设环境局网站公司注册网上核名通道
  • 叶县建设局网站要看网海外域名是多少
  • 网站运行环境配置Wordpress支付时效
  • logo设计网站知乎港北网站建设
  • 北京市保障性住房建设投资中心官方网站有限责任公司的特点
  • 做网站卖互联网营销怎么做
  • 晋州市建设局网站建站网站系统
  • 专业网站优化方案广东微信网站制作报价表
  • 北京网站建设公司分形科技简述营销网站建设策略
  • 汉中网站建设有限公司vue网站开发
  • 网站备案背景幕布阳江东莞网站建设
  • 北京网站建设要多少钱html网站标签
  • 做兼职做网站的是什么公司网站怎么修改
  • 舆情监控都有哪些内容西安seo网站公司
  • 网站有域名没备案天津网络营销
  • 哈巴狗模式网站开发电子商务平台建设与运营技术
  • 摄影网站源码wordpress内涵段子
  • 实验一 电子商务网站建设与维护图片做网站
  • 网站策划书模板大全中国建设部官方网站资格证查询
  • vps绑定多个网站创意咨询策划公司
  • 做qq图片的网站网页制作与网站建设江西
  • 做爰全过程的视频网站网络文化经营许可证怎么办