位置: 编程技术 - 正文

简单分析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如何优化)

  • 附加税申报表怎么做
  • 账面金额是包含什么?
  • 财务人员办理会计业务
  • 人员工资成本占收入多少合适,占总成本多少合适
  • 出售无形资产净收益是收入吗
  • 资本公积是企业所得税吗
  • 存货验收入库会计分录
  • 以汽车出资
  • 固定资产报废的账务处理例题
  • 酒店购买毛巾客房领用怎么做会计分录?
  • 企业转增股本要交税吗
  • 处理固定资产需要交企业所得税吗
  • 地税开发票为啥要交百分之二的企业所得税?
  • 认证的增值税发票怎么做成账本格式
  • 公司注销前怎么平账才不用交税
  • 机票保险可以报销入账吗
  • 只有进项没有销项怎么报税
  • 付给企业的律师费用
  • 残保金逾期未申报的税务怎么处理
  • 累计折旧要结转到本年利润吗
  • 收到政府补贴要交增值税吗
  • 电子发票已开出客户退款会计处理是怎样的?
  • 一般纳税人错开免税发票如何申报
  • 自然人股权转让要交什么税
  • 出纳电汇流程
  • 印花税的会计处理是什么
  • 公司开业需要怎么布置
  • 如何在WIN10系统安装IE浏览器
  • the Pura Meduwe Karang神庙中雕刻艺术家W.O.J.Nieuwenkamp的作品,印度尼西亚巴厘岛 (© John Elk III/Getty Images)
  • php用户会员系统
  • 出口退税款的会计科目
  • php控制器是用来做什么的
  • 什么是非征期税未报
  • css字体溢出
  • php静态方法和非静态方法
  • 毕业设计烦死了
  • high-resolution image synthesis with latent diffusion models
  • nor命令
  • phpcms rce
  • 一般纳税人注销税务流程
  • 个人代人开普票要交几个点税
  • 长期待摊费用是资产
  • 金蝶软件账套备份在哪里
  • mysql备份方式有哪些
  • 起重机属于固定资产中什么设备类型
  • 农产品来源用途是什么
  • 资产负债表怎么算
  • 销售自己使用过的物品免税吗
  • 社保滞纳金所得税
  • 员工借款的定义
  • 债权投资相关科目
  • 发票不按实际数量单价开 但金额一致
  • 公司注销流程是哪些
  • 房地产开发企业销售自行开发的房地产项目
  • 差旅费借记什么科目
  • 企业买车计入什么科目
  • 员工预支工资可以从工资里扣吗
  • 收款凭证和付款凭证是出纳人员收款、付款的依据
  • 电脑算固定资产哪一类
  • mysql 5.7.16 zip包安装配置方法图文教程
  • 修改linux系统ip
  • executor进程
  • 卸载软件后整个盘都清空了
  • win8.1文件夹选项
  • linux命令telnet
  • win10系统应用和浏览器控制出现感叹号
  • windows日历
  • win10桌面图标排列设置
  • ES6中javascript实现函数绑定及类的事件绑定功能详解
  • 用css滤镜实现的代码
  • 批处理命令读取文件内容
  • 在javascript中用下面哪个关键词来定义变量
  • excel自定义控件
  • centos6.5
  • bootstrapping怎么做
  • jqueryui dialog
  • 酒精是否缴纳消费税
  • 什么是双创服务平台
  • 税务局工作业绩
  • 软件企业专项审计
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设