我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL为什么不建议用UUID做innodb主键

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL为什么不建议用UUID做innodb主键

这篇文章将为大家详细讲解有关MySQL为什么不建议用UUID做innodb主键,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1).UUID虽然能够保证ID的唯一性,但是无法满足业务系统需要的很多其他特性,例如:时间粗略有序性、可反解和可制造性;
2).UUID产生时使用完全的时间数据,性能比较差;
3).UUID比较长,会占用空间大,间接导致数据库性能下降;
4).UUID并不具有有序性,会导致B+树索引在写的时候有过多的随机写操作(连续的ID会产生部分顺序写);
5).在写的时候不能产生有序的append操作,而需要进行insert操作,将读取整个B+树节点到内存,在插入这条记录后会将整个节点写回磁盘,这种操作在记录占用空间比较大的情况下,性能会明显下降。
6).UUID目前不是顺序增长,做为主键写入导致,随机IO严重。

关于“MySQL为什么不建议用UUID做innodb主键”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL为什么不建议用UUID做innodb主键

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql innodb为什么建议使用自增数字作为主键?

1.建议使用有序的自增ID作为主键MySQL InnoDB 引擎底层数据结构是 B+ 树,所谓的索引其实就是一颗 B+ 树,一个表有多少个索引就会有多少颗 B+ 树,mysql 中的数据都是按顺序保存在 B+ 树叶子节点上的(所以说索引本身是有序的)。主要目的
mysql innodb为什么建议使用自增数字作为主键?
2019-03-20

MySql主键id不推荐使用UUID的原因是什么

本文小编为大家详细介绍“MySql主键id不推荐使用UUID的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySql主键id不推荐使用UUID的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧
2023-07-05

深入分析mysql为什么不推荐使用uuid或者雪花id作为主键

前言:在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏
2022-05-25

为什么在MySQL中不建议使用UTF-8

最近我遇到了一个 bug,我试着通过 Rails 在以“utf8”编码的 MariaDB 中保存一个 UTF-8 字符串,然后出现了一个离奇的错误:Incorrect string value: ‘\xF0\x9F\x98\x83 for
2022-05-16

为什么不建议使用DiskFileUpload类型

不建议使用DiskFileUpload类型的主要原因是它会将文件保存到临时目录中,而临时目录可能会被清理或定期清除。这就意味着在某些情况下,上传的文件可能会丢失。另一个原因是DiskFileUpload类型需要占用磁盘空间,因为它将文件保存
2023-08-08

浅谈为什么MySQL不建议delete删除数据

前言我负责的有几个系统随着业务量的增长,存储在MySQL中的数据日益剧增,我当时就想现在的业务方不讲武德,搞偷袭,趁我没反应过来把很多表,很快,很快啊都打到了亿级别,我大意了,没有闪,这就导致跟其Join的表的SQL变得很慢,对的应用接口的
2022-05-26

编程热搜

目录