mysql 使用ON DUPLICATE KEY UPDATE 导致的自主键id无限增大问题

mysql 版本:5.7 python版本:3.7 问题描述:mysql表A中数据有几十条,设置了一个自 1 的id作为主键,在程序运行一段时间后发现表中最后一条数据的id已经是几百万了 表中所有数据如下: 可以看到最大的一条id已经是四百多万了,并且id是不连续 ...

Sat Nov 28 00:52:00 CST 2020 1 1053
mysql主键为什么不是连续的?

由于自主键可以让主键索引尽量地保持递增顺序插入,避免了页分裂,因此索引更紧凑 MyISAM 引擎的自增值保存在数据文件中 nnoDB 引擎的自增值,其实是保存在了内存里,并且到了 MySQL 8.0 版本后,才有了“自增值持久化”的能力,也就是才实现了“如果发生重启 表的自增值 ...

Mon Mar 04 23:08:00 CST 2019 0 1614
MySQL 中什么情况会导致主键不能连续

简单点说: 以下情况会导致 MySQL主键不能连续: 唯一主键冲突会导致主键连续; 事务回滚也会导致主键连续。 相关面试题总结如下: 一:自主键连续的么?   - 自主键不能保证连续递增。 二:自增值保存在哪里?  当使用 show ...

Thu Mar 26 17:30:00 CST 2020 0 707
mysql使用replace和on duplicate key update区别

实际业务使用中,有时候会遇到插入数据库,但是如果某个属性(比如:主键)存在,就做更新。通常有两种方式:1、replace into 2、on duplicate key update 但是在使用过程中,发现了两者的区别,整理如下: replace into :首先尝试插入数据 ...

Tue Jun 04 21:31:00 CST 2019 0 972
Mysql - 自主键为何不是连续的?》

一:自主键连续的么?   - 自主键不能保证连续递增。 二:自增值保存在哪里?   - 当使用 show create table `table_name`;,会看到 自增值,也就是 AUTO_INCREMENT ...

Wed Jun 26 19:21:00 CST 2019 0 803
mysql的innodb自主键为什么不是连续

            图1 图1中是表t原有的数据,这个时候我们执行show create table t会看到如下输出,如图二所示现在的自增值是2,也就是下一个不指定主键值的插入的数据的主键就是2 图2 Innodb引擎的自增值,是保存在内存中的,并且到了mysql8.0版本后 ...

Sun Apr 21 00:05:00 CST 2019 0 2107
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM