前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >2020-12-02:mysql中,一张表里面有 ID 自增主键,当 insert 了 17 条记录之后...

2020-12-02:mysql中,一张表里面有 ID 自增主键,当 insert 了 17 条记录之后...

原创
作者头像
福大大架构师每日一题
修改2020-12-07 11:06:53
修改2020-12-07 11:06:53
8160
举报

2020-12-02:mysql中,一张表里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录,再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 15 ?

福哥答案2020-12-04:答案来自此链接:

1.Mysql8.0以下版本

表类型为InnoDB引擎,这条记录的ID是15。因为InnoDB表只把自增主键的最大ID记录到内存中,所以重启MYSQL或者对表OPTIMIZE操作,都会使最大ID丢失。

表类型为MylSAM引擎,这条记录的ID是18。因为MylSAM表会把自增主键的最大ID记录到数据文件里面,重启MYSQL后,自增主键的最大ID也不会丢失。

2.Mysql8.0及以上版本

这条记录的ID是18,因为这个版本保存ID的值是在redo日志中的,重启之后是可以恢复的。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档