重启mysql服务命令mysql 自增id 起始设置




重启mysql服务命令mysql 自增id 起始设置

2022-07-20 21:30:36 网络知识 官方管理员

结论

  • 如果表的类型是InnoDB,那么是2;InnoDB表只是把自增主键最大ID记录到内存中,所以重启数据库或者是对表进行OPTIMIZE操作,都会导致最大ID丢失。
  • 如果表的类型是MyISAM,那么是5;因为MyISAM表会把自增主键的最大ID记录到数据文件里,重启MySQL自增主键的最大ID也不会丢失。

下面真实模拟下这个问题

使用Innodb

新建表,主键设置自增

重启mysql服务命令(mysql自增id起始设置)(1)

重启mysql服务命令(mysql自增id起始设置)(2)

设置表引擎为InnoDB

重启mysql服务命令(mysql自增id起始设置)(3)

重启mysql服务命令(mysql自增id起始设置)(4)


新增数据:

重启mysql服务命令(mysql自增id起始设置)(5)

重启mysql服务命令(mysql自增id起始设置)(6)


删除234

重启mysql服务命令(mysql自增id起始设置)(7)

重启mysql服务命令(mysql自增id起始设置)(8)


关闭服务、然后重启服务

重启mysql服务命令(mysql自增id起始设置)(9)

重启mysql服务命令(mysql自增id起始设置)(10)


重启服务之后,添加数据

重启mysql服务命令(mysql自增id起始设置)(11)

重启mysql服务命令(mysql自增id起始设置)(12)


结论:

如果表的类型是InnoDB,那么是2;InnoDB表只是把自增主键的最大ID记录到内存中,所以重启数据库或者是对表进行OPTIMIZE操作,都会导致最大ID丢失。

同上面的步骤,使用myIsam

新建表,引擎改为myisam

重启mysql服务命令(mysql自增id起始设置)(13)

重启mysql服务命令(mysql自增id起始设置)(14)


添加四条数据,id=1,2,3,4,删除id=2,3,4的数据

重启mysql服务命令(mysql自增id起始设置)(15)

重启mysql服务命令(mysql自增id起始设置)(16)


重启服务:id是5,不是2

重启mysql服务命令(mysql自增id起始设置)(17)

重启mysql服务命令(mysql自增id起始设置)(18)


结论:

如果表的类型是MyISAM,那么是5;因为MyISAM表会把自增主键的最大ID记录到数据文件里,重启MySQL自增主键的最大ID也不会丢失。


发表评论:

最近发表
网站分类
标签列表