`
fancyboy2050
  • 浏览: 240741 次
  • 性别: Icon_minigender_1
  • 来自: 皇城根儿下
社区版块
存档分类
最新评论

mysql变更AUTO_INCREMENT值

 
阅读更多
数据库中id的值
mysql> select * from user_id_seq;
+----------+------+
| id       | stub |
+----------+------+
| 10000025 | a    |
+----------+------+

| user_id_seq | CREATE TABLE `user_id_seq` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stub` varchar(3) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `stub` (`stub`)
) ENGINE=InnoDB AUTO_INCREMENT=10000026 DEFAULT CHARSET=utf8 |


使用mysql生成全局主键,测试的时候因为需要将AUTO_INCREMENT调整到了一千万,测试完成后希望该键值退回到一个比较小的初始值。

mysql> update user_id_seq set id = 100;
mysql> commit;
修改完后:
mysql> select * from user_id_seq;
+-----+------+
| id  | stub |
+-----+------+
| 100 | a    |
+-----+------+
但是:
mysql> show create table user_id_seq;
| user_id_seq | CREATE TABLE `user_id_seq` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stub` varchar(3) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `stub` (`stub`)
) ENGINE=InnoDB AUTO_INCREMENT=10000026 DEFAULT CHARSET=utf8 |

AUTO_INCREMENT的值依旧是10000026

然后再执行:
mysql> alter table user_id_seq AUTO_INCREMENT = 100;
mysql> commit;

这时AUTO_INCREMENT的值才真正的变小,再次从该表中取得主键值将从101开始。
分享到:
评论

相关推荐

    mysql中自增auto_increment功能的相关设置及问题

    mysql中的自增auto_increment功能相信每位phper都用过,也都知道如何设置字段为自增字段,但并不是所有phper都知道auto_increment的起始值和递增量是如何设置的!本文就为大家分享一下mysql字段自增功能的具体查看及...

    windows下mysql主备双向复制与mycat负载均衡

    - auto_increment_offset和auto_increment_increment:这两个参数用于控制自动增长字段的初始值和增量,对于双向复制来说,两台服务器的auto_increment_offset应设置不同值,避免数据冲突。 - replicate-do-db和...

    MySql数据库自动递增值问题

    MySQL数据库中的自动递增值(AUTO_INCREMENT)是用于创建唯一标识符的一种机制,尤其在需要为每条记录分配一个唯一的ID时非常有用。这个特性主要应用于整数类型的字段,并且通常设置为主键的一部分,确保每个记录的...

    MySQL数据库双活同步复制方案详解.docx

    为了防止数据冲突,自增ID的配置至关重要,通常会设置`auto_increment_increment`和`auto_increment_offset`以避免ID冲突。此外,半同步复制(semi-sync)可以降低复制延迟,但可能牺牲事务并发性能。对于延迟非常...

    mysql-oracle数据同步

    在MySQL中,我们通常使用`AUTO_INCREMENT`属性来定义自增主键,而在Oracle中,可使用`SEQUENCE`对象来生成序列号。在数据同步过程中,如果需要保持两个数据库的主键一致,需要在插入Oracle时根据MySQL的最新主键值...

    2017最全省市区表,mysql

    `id` INT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(50) NOT NULL, `code` VARCHAR(10) UNIQUE ); CREATE TABLE `cities` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `province_id` INT, `name` VARCHAR(50)...

    mysql中binlog_format模式与配置详细分析

    - AUTO_INCREMENT冲突可能导致插入阻塞。 - 资源消耗可能较大,特别是处理复杂语句时。 **RBR优点**: - 数据一致性更高,因为只记录实际改变的行。 - 更适合复杂的存储过程和触发器。 - 减少因全表扫描导致的锁...

    MySQL之DDL语句

    id int primary key auto_increment, username varchar(40), password varchar(40), email varchar(40), role char(1), status char(1), account decimal(10,2), age int, registtime timestamp, image ...

    MySQL 5.1参考手册

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2. 优化...

    MySQL 5.1参考手册中文版

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2....

    MariaDB配置双主复制方案

    auto_increment_increment和auto_increment_offset用于解决在多主环境下auto_increment字段可能出现的重复问题。 接下来,需要在两台服务器上创建用于复制的账户。这里使用了replication slave权限,创建完账户后,...

    MYSQL中文手册

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 ...

    mysql官方中文参考手册

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2. 优化...

    mysql5.1中文手册

    多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己...

    MySQL5.1参考手册官方简体中文版

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2. 优化...

    MySQL 高可用性—keepalived+mysql双主.docx

    配置过程中,需要修改MySQL的配置文件,例如设置`binlog_format`为`mixed`模式,启用`relay-log`和`relay-log-index`,并调整`auto-increment-increment`和`auto-increment-offset`以防止主键冲突。此外,可以通过`...

    mysql如何设置默认时间为当前时间

    `id` INT NOT NULL AUTO_INCREMENT, `name` VARCHAR(50) NOT NULL, `created_at` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ); ``` 在这个例子中,`created_...

    MySQL 5.1中文手冊

    6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2. 优化...

Global site tag (gtag.js) - Google Analytics