gpt4 book ai didi

mysql - 设置 auto_increment_increment = 1 对现有表的影响

转载 作者:行者123 更新时间:2023-12-02 00:49:36 28 4
gpt4 key购买 nike

我创建了一个新的 MySql 表,看到自动递增字段以 3 的值开始并递增 2。我做了一个 SHOW VARIABLES LIKE 'auto_inc%'; 并得到这个 -

auto_increment_increment 2
auto_increment_offset 2

我做了一些研究,发现我需要使用-

SET @@auto_increment_increment=1;  and
SET @@auto_increment_offset=1;

但我的问题是,将这两个值都设置为 1 会影响行在具有自动递增字段的其他表中的插入方式吗?现在插入这些表的新行是否会以 1 的自动增量 id 开头?还是这只会影响 future 的新表?

最佳答案

auto_increment_incrementauto_increment_offset 的效果不是针对每个表的,它适用于您插入的所有表。

如果您在自己的 session 中使用 SET,则变量只会在您的 session 中更改。其他 session 中的行为不会改变。此外,如果您断开连接并重新连接,您的 session 设置将重置为全局设置。

要进行全局更改,您需要使用SET GLOBAL。但下次 MySQL 服务器重新启动时更改将被撤消。

要使更改全局持久化,要么编辑my.cnf 文件,以便在每次 MySQL 服务器启动时设置该变量,要么在 MySQL 8.0 中添加一项功能,因此您现在可以使用 SET PERSIST 更改全局变量,并且它会在重启后保留设置。

您可以阅读更多相关信息:

关于mysql - 设置 auto_increment_increment = 1 对现有表的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58843617/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com