MySQL自增长的bug?
实验环境:
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.14, for Linux (x86_64) using EditLine wrapper……
mysql> show variables like 'auto_increment%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | |
| auto_increment_offset | |
+--------------------------+-------+
rows in set (0.03 sec)
auto_increment_offset:默认自增长起始点值;
auto_increment_increment:默认自增长增量值;
(截图取材于标准MySQL5.7官方文档--没有盗版)
mysql> create table t1(id int not null primary key auto_increment);
Query OK, rows affected (0.21 sec) mysql> insert into t1 values(null),(null),(null);
Query OK, rows affected (0.06 sec)
Records: Duplicates: Warnings: mysql> select * from t1;
+----+
| id |
+----+
| |
| |
| |
+----+
rows in set (0.00 sec)
1、修改自增长变量值
mysql> set @@auto_increment_offset=;
Query OK, rows affected (0.00 sec) mysql> set @@auto_increment_increment=;
Query OK, rows affected (0.00 sec) mysql> show variables like 'auto_increment%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | |
| auto_increment_offset | |
+--------------------------+-------+
rows in set (0.02 sec)
通过变量的修改,现在的自增长起始值是10,增量是5。
2、建表插值
mysql> create table t2(id int not null primary key auto_increment);
Query OK, rows affected (0.11 sec) mysql> insert into t2 values(null),(null),(null);
Query OK, rows affected (0.04 sec)
Records: Duplicates: Warnings:
因为自增长起始值是10,增量是5;猜想结果值是10,15,20
3、查询结果
mysql> select * from t2;
+----+
| id |
+----+
| |
| |
| |
+----+
rows in set (0.01 sec)
结果却非我们所猜想的???
继续插入值
mysql> insert into t2 values(null),(null),(null);
Query OK, rows affected (0.05 sec)
Records: Duplicates: Warnings: mysql> select * from t2;
+----+
| id |
+----+
| |
| |
| |
| |
| |
| |
+----+
rows in set (0.00 sec)
经过多组测试,结果依旧(试验其他值都是正常的,唯独上述有问题)
那么,
问题来了,auto_increment_offset=10和auto_increment_increment=5这一组数值算是MySQL自增长里的一个bug吗?
MySQL自增长的bug?的更多相关文章
- mysql自动增长的有关问题,怎么恢复从1开始
mysql自动增长的问题,如何恢复从1开始在一个表中我设置到autoid为自动增长列例如有如下数据 1 张三 男 202 王五 男 223 李四 男 254 陈大 男 19 现在我把 autoid=3 ...
- 记录一次现网MySQL内存增长超限问题定位过程
问题现象现网物理机内存近几日内爆涨使用率超过了90%,可用内存从250G,降低到20G以下,报告警.服务器使用情况来看,并没有什么异常.除了QPS缓慢增长外. MySQL内存分配结构 定位这个问题,先 ...
- EntityFrameWork使用MySql数据库分页的BUG
环境 使用MySQL Connector NET 6.7.4+EF5.0+VS2010 问题描述 IQueryable<T>类型的Where方法和Skip或Take方法一起使用时,生成的S ...
- FluentData Mysql分页的一个BUG
开发环境 FluentData3.0.VS.NET2010.Mysql5.0 问题描述 使用FluentData对一个表(记录数28)进行分页时,突然发现一个诡异的问题,第一页返回10条数据正常,第二 ...
- 给MySQL官方提交的bug report备忘
1. Bug #72215 When LOCK_plugin conflicts very much, one uninstall-audit-plugin operation crash htt ...
- 当插入数据失败时,防止mysql自增长字段的自增长的方法
问题描述: 当mysql设置了自增长字段时(注意:一个表中只能设置一个自增长字段,可以不是主键,但必须是键 ),如果插入数据失败,那么自增长字段仍然会占用这个自增长值,再次成功插入数据时就会造成断层. ...
- 本周MySQL官方verified的bug列表(11月1日至11月7日)
本周MySQL verified的bug列表(11月1日至11月7日) 1.Bug #70839JSON_VALID allows to have two elements with the same ...
- [转] hibernate Mysql 自增长 注解配置,表无关联的注解方式关联查询
不同数据库 自增长ID配置 正对不同的数据库可以同时使用 @Id @GeneratedValue(strategy = GenerationType.AUTO) 2 针 ...
- mysql 自增长 AUTO_INCREMENT
Mysql可以使用AUTO_INCREMENT来设定主键的值为自增长的,其默认值是1. 如果想把它的初始值设置为n,可执行:alter table table_name auto_increment= ...
随机推荐
- Python学习笔记之基本语法学习1
★学习目标: 用Python做HTTP接口测试 ★学习的大纲: ●Python语言基础(安装,第一个案例,基本语法等) ●Request模块使用 ●编写一个简单功能的接口测试案例 ●HTTP协议基础 ...
- IT生涯, 我的常用软件清单
IT生涯, 我的常用软件清单 SkySeraph Jan. 26th 2017 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点:www.skysera ...
- Servlet实现的三种方式
实现Servlet的三种方式:一个实现,两个继承 /*========================================== * servlet的执行过程: * 1.创建servlet对 ...
- 一键部署Kubernetes高可用集群
三台master,四台node,系统版本为CentOS7 IP ROLE 172.60.0.226 master01 172.60.0.86 master02 172.60.0.106 master0 ...
- C++实现动态顺序表
顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构.这样的存储方式使得线性表逻辑上相邻的元素,其在物理存储单元中也是相邻的.只要知道了第一个元素的存 ...
- android.util.Log常用方法
android.util.Log常用的方法有以下5个: Log.v() Log.d() Log.i() Log.w() 以及 Log.e() .根据首字母分别对应VERBOSE,DEBUG,INFO, ...
- js面向对象二级菜单
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...
- mysql5.7.1.3 安装说明 和出现的问题
1.可以去官网下载 http://dev.mysql.com/downloads/mysql/ 链接: http://pan.baidu.com/s/1hsO5OX2 密码: jmc6 2.解压到文件 ...
- Nginx VS Apache
作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率 Nginx 静态处理性能比 Apache 高 3倍以上 最核心的区别在于apache是同步多进 ...
- react中,constructor和getInitialState的区别
1,ES6语法 使用class声明一个类,且要继承react组件的方法和属性的时候 : 在里面我们可以直接指定 this.state = { }, 我们可以当前组件内任何地方使用 this.setSt ...

