位置: 编程技术 - 正文

简单分析MySQL中的primary key功能(mysql的基本介绍)

编辑:rootadmin

推荐整理分享简单分析MySQL中的primary key功能(mysql的基本介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql的理解,mysql的理解,mysql总结与分析,简要叙述一下mysql是什么,简要叙述一下mysql是什么,mysql 分析,mysql的理解,mysql总结与分析,内容如对您有帮助,希望把文章链接给更多的朋友!

在5.1.中优化器在对primary key的选择上做了一点改动:

Performance: While looking for the shortest index for a covering index scan, the optimizer did not consider the full row length for a clustered primary key, as in InnoDB. Secondary covering indexes will now be preferred, making full table scans less likely。

该版本中增加了find_shortest_key函数,该函数的作用可以认为是选择最小key length的

索引来满足我们的查询。

该函数是怎么工作的:

调用Primary_key_is_clustered(),当返回值为true,执行find_shortest_key:选择key length最小的覆盖索引(Secondary covering indexes),然后来满足查询。

首先在5.1.中测试:

简单分析MySQL中的primary key功能(mysql的基本介绍)

创建索引ind_1:

添加ind_2:

上面的版本【5.1.】中,可以看到优化器选择使用主键来完成扫描,并没有使用ind_1,ind_2来完成查询;

接下来是:5.1.

创建索引ind_1:

版本【5.1.】中首先明智的选择ind_1来完成扫描,并没有考虑到使用主键(全索引扫描)来完成查询,随后添加ind_2,由于 ind_1的key长度是大于ind_2 key长度,所以mysql选择更优的ind_2来完成查询,可以看到mysql在选择方式上也在慢慢智能了。

观察性能:

对比性能:

从上面的profile中可以看到在Sending data上,差异还是比较明显的,mysql不需要扫描整个表的页块,而是扫描表中索引key最短的索引页块来完成查询,这样就减少了很多不必要的数据。

PS:innodb是事务引擎,所以在叶子节点中除了存储本行记录外,还会多记录一些关于事务的信息(DB_TRX_ID ,DB_ROLL_PTR 等),因此单行长度额外开销个字节左右,最直观的方法是将myisam转为innodb,存储空间会明显上升。那么在主表为t(id,name,pk(id)),二级索引ind_name(name,id),这个时候很容易混淆,即使只有两个字段,第一索引还是比第二索引要大(可以通过innodb_table_monitor观察表的的内部结构)在查询所有id的时候,优化器还是会选择第二索引ind_name。

提高MySQL中InnoDB表BLOB列的存储效率的教程 首先,介绍下关于InnoDB引擎存储格式的几个要点:1、InnoDB可以选择使用共享表空间或者是独立表空间方式,建议使用独立表空间,便于管理、维护。启

使用sysbench来测试MySQL性能的详细教程 sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。目前sysbench代码托管在launchpad上,项

探究MySQL中索引和提交频率对InnoDB表写入速度的影响 本次,我们来看看索引、提交频率对InnoDB表写入速度的影响,了解有哪些需要注意的。先直接说几个结论吧:1、关于索引对写入速度的影响:a、如果有

标签: mysql的基本介绍

本文链接地址:https://www.jiuchutong.com/biancheng/347333.html 转载请保留说明!

上一篇:在大数据情况下MySQL的一种简单分页优化方法(大数据可以在等方面发挥作用)

下一篇:提高MySQL中InnoDB表BLOB列的存储效率的教程(mysql in如何优化)

  • 印花税核定征收文件
  • 发票已抵扣但对方要红冲后续原发票要拿回来吗
  • 黄金销售免税
  • 电梯维保费属于建筑服务吗
  • 一般纳税人简易计税可以抵扣进项税额吗
  • 房租押金没退款怎么起诉
  • 小规模免哪些税
  • 企业降低存货成本的途径和方法
  • 企业所得税汇算清缴时间
  • 所得税纳税申报表在哪里打印
  • 有形资产净值是指
  • 期末应交企业所得税怎么算
  • 购买成品入库并结转成本会计分录怎么写?
  • 物料损耗会计分录
  • 股东货币出资比例
  • 税务局开收据的流程
  • 单独计价入账的土地是无形资产吗
  • 出口没有退税的发票
  • 预付账款需要发票吗
  • 小规模纳税人发票增额需要什么手续
  • 季度盈利要交所税吗
  • 税金及附加包括个人所得税吗
  • 小规模增值税免税额
  • 公司原因领不了失业保险要赔偿吗
  • 苹果13promax哪个颜色最贵
  • 银行融资成本计算方法
  • 专项基金是什么
  • 服务公司收到服务费发票怎么做账
  • php判断为空的方法有哪些
  • 实例简介php的一般过程
  • 住房补贴缴纳比例是多少
  • 向分公司借款
  • live updater
  • 金融企业呆账核算流程
  • 资产盘盈盘亏处理
  • 统一社会保险费征收
  • 去年买的设备今年入固定资产如何做账
  • openlayers6教程
  • 数以千计的拼音是什么
  • php7 openssl
  • 表关联查询语句
  • php添加背景怎么实现
  • vue挂载dom
  • 小规模纳税人直接从农户购入农产品要交增值税吗
  • 冲红的发票怎么做账会计分录
  • 根据《中华人民共和国食品安全法》
  • 申请专利的费用主要包括
  • 未使用的固定资产
  • 企业所得税报表查询怎么查
  • 跨年发票两大原则
  • 发票未及时开,但是双方会计已经做帐,怎么办?
  • 缴纳社保公积金的会计分录
  • 退货的增值税专用发票怎么开
  • 进项税怎么记账
  • 运输费用怎么计算
  • 年末计提企业所得税的依据
  • 结转完期间损益是不是可以结账了
  • 公司暂估成本分录
  • 优化sql语句10种方法
  • linux下mysql5.7.19(tar.gz)安装图文教程
  • 存储过程的输出参数有且只能有一个
  • xp系统盘空间不足怎么办
  • 苹果mac怎么安装win10
  • macbook程序在哪
  • win7音量图标不能启用
  • shstart.exe - shstart是什么进程 有什么用
  • win7系统桌面右键没有个性化
  • win7没有nvidia控制面板怎么调节亮度
  • unity 读取xml文件
  • 简单理解贴现
  • node介绍
  • 浅谈自己对教育的理解
  • nodejs调用c++函数
  • 讲解JavaScript中for...in语句的使用方法
  • jq easyui
  • ORMLite完全解析(四) 官方文档第四章、在Android中使用
  • 缴款书的基本内容
  • 汽车销售流程有哪些环节?每个环节的主要内容是什么?
  • 哪些情况要交房租
  • 办理养殖照税务登记证
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设