结论
- 如果表的类型是 InnoDB,那么是 2;InnoDB 表只是把自增主键的最大 ID 记录到内存中,所以重启数据库或者是对表进行 OPTIMIZE 操作,都会导致最大 ID 丢失。
- 如果表的类型是 MyISAM,那么是 5;因为 MyISAM 表会把自增主键的最大 ID 记录到数据文件里,重启 MySQL 自增主键的最大ID 也不会丢失。
下面真实模拟下这个问题
使用Innodb
新建表,主键设置自增
设置表引擎为InnoDB
新增数据:
删除234
关闭服务、然后重启服务
相关影片资源迅雷下载推荐
mysql配置环境变量(mysql免安装及配置超详细教程)
重启服务之后,添加数据
结论:
如果表的类型是 InnoDB,那么是 2;InnoDB 表只是把自增主键的最大 ID 记录到内存中,所以重启数据库或者是对表进行 OPTIMIZE 操作,都会导致最大 ID 丢失。
同上面的步骤,使用myIsam
新建表,引擎改为myisam
添加四条数据,id=1,2,3,4,删除id=2,3,4的数据
重启服务:id是5,不是2
结论:
如果表的类型是 MyISAM,那么是 5;因为 MyISAM 表会把自增主键的最大 ID 记录到数据文件里,重启 MySQL 自增主键的最大ID 也不会丢失。
相关影片资源迅雷下载推荐
笔记本任务管理器快捷键(Win11启动任务管理器的几种方法)
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。