mysql—如何为innodb选择主键

mysql—如何为innodb选择主键

一.主键应该尽可能的小

因为在innodb表中,每一个非主键索引的叶子节点上都会存储主键列的信息, 所以如果主键索引太大,会导致其他非主键索引页变大, 降低索引的查询效率

二.主键应该是顺序增长的

innodb的逻辑顺序和主键索引的顺序是相同的,即聚簇索引, 如果主键索引是自动增长的,那这样插入数据 也会顺序插入,避免了随机IO的产生,提交插入效率

三.innodb的主键和业务主键可以不同

当业务主键满足不了前面两点,可以再另外创建一个主键索引,业务主键用唯一索引来表示即可

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2340.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CentOS7安装MySQL(完整版)

    CentOS7安装MySQL(完整版)在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。1下载并安装MySQL官方的YumRepository[root@localhost~]#wget-i-chttp://dev.mysql.com/get/mysql57-community-release-…

    2022年4月28日
    30
  • Circos入门_circor

    Circos入门_circor是那个基于perl的CircosMac/Linux的安装可以参考之前的文章【传送门】Window安装会有点麻烦01官网教程必读内容这不是一个手把手教程,所以如果想解circos的使用,推荐…

    2025年7月14日
    2
  • 明翰英国硕士常见词汇与固定搭配V1.2(持续更新)

    明翰英国硕士常见词汇与固定搭配V1.2(持续更新)下面的所有词汇与例句都是在英国留学期间,用到的、听到的、见到的,都是学校、教职人员、同学使用过的,对于高频词汇一定要掌握听说读写。

    2022年10月2日
    2
  • STM32使用LWIP库新建tcp_sever

    STM32使用LWIP库新建tcp_sever欢迎查看本文所在的系列 STM32 的 LWIP 应用 点击跳转 main 函数区域 1 是 lwip 的初始化 voidLwIP Init void structip addripaddr structip addrnetmask structip addrgw mem init 内存堆初始化 memp init 内存池初始化 IP4 ADDR

    2025年10月30日
    3
  • 全012路规律_双元素集合怎么判断

    全012路规律_双元素集合怎么判断堆题目链接将一系列给定数字顺序插入一个初始为空的小顶堆H[]。随后判断一系列相关命题是否为真。命题分下列几种:x is the root:x是根结点;x and y are siblings:x和y是兄弟结点;x is the parent of y:x是y的父结点;x is a child of y:x是y的一个子结点。输入格式:每组测试第1行包含2个正整数N(≤ 1000)和M(≤ 20),分别是插入元素的个数、以及需要判断的命题数。下一行给出区间[−10000,10000]内的N个要被

    2022年8月8日
    4
  • java字符串gb18030编码和utf8编码互转[通俗易懂]

    java字符串gb18030编码和utf8编码互转[通俗易懂]java字符串gb18030编码和utf8编码互转

    2022年4月23日
    315

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号