位置: 编程技术 - 正文

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

  • 公司购买股票如何做账
  • 季度费用支出怎么做
  • 增值税进项发票网上勾选平台
  • 采购返利怎么生成发票
  • 减免税备案登记表样本
  • 离职补偿金入账
  • 金税盘地区编号淄博
  • 房地产开发企业资质等级有几个
  • 税前可以扣除的有哪些费用
  • 一次性取得的租金收入
  • 应交税金及附加包括哪些
  • 预收账款年底要确认收入吗
  • 通用机打发票可以抵扣税吗
  • 烟酒发票可以抵扣所得税吗
  • 收入低于10万免征附加税
  • 对于长期没发票的预付款怎么处理?
  • windows10如何清理c盘垃圾
  • u盘转移到另一个u盘
  • 即征即退申报表如何填写
  • 没有实际出资的股东怎么退出
  • 注销公司如何注销
  • php数组函数题目
  • 日本北海道 (© Hiroshi Yokoyama/eStock Photo)
  • 坎塔布莱恩
  • 开发商违法
  • uniapp 打开小程序
  • 2023新版拳击航母
  • 微信小程序小小驯龙师破解版
  • checksum命令
  • 联营企业分得的利润
  • 哪些税是季报
  • 建筑劳务税率是13还是6
  • vue使用百度地图md5报错
  • 购买电脑的过程
  • 月度合并报表与年度合并区别
  • 个人所得税分摊方式怎么填
  • 小微企业免税销售额是多少2023年
  • 总公司账务处理
  • 志愿者服务活动有哪些内容
  • 现金日记账的结账方法
  • 小企业研发费用放在哪个科目
  • 公司国庆节给员工慰问品
  • 劳务外包存在的法律风险
  • 印花税的减免
  • 固定资产清理和持有待售资产
  • 会计凭证是对外公布的资料吗
  • 新会计准则2019待摊费用
  • sqlserver获取当天零点时间
  • windows ssh-keygen
  • 韩国电脑用什么系统
  • mac桌面日历 记事本
  • linux 匹配字符
  • win8老是自动安装软件
  • 优化计算
  • centos6.5升级到7.2
  • win10 预览版 移除 tab 栏 特性
  • gzip与zip
  • jquery九宫格抽奖
  • node.js deno
  • alt用不了
  • linux中的命令及含义
  • python多进程并发http请求
  • unity3d documentation
  • opengl 缓存
  • vue怎么实现多页面
  • android iframe
  • js创建对象的三种方式
  • 初步使用筷子而动作不规范的幼儿保育员应该
  • node爬取数据
  • java项目的命名规则
  • android:theme="@style/apptheme"
  • jq写css样式
  • 使用权资产
  • python3连接pg执行命令
  • 贵州省电子税务局操作手册
  • 发票金额模糊怎么查询
  • 充值卡和预付卡区别
  • 张家港市有什么好吃的美食
  • 电信宽带欠费滞纳金最多减免多少?
  • 贵州税务申报如何网上申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设