在mysql数据库中,使用auto_increment 字段来辅助为自增列赋值。
显示有关msyql自增ID的相关配置信息:
复制代码 代码示例:
SHOW VARIABLES LIKE 'auto_incre%';
输出:
auto_increment_increment 1
auto_increment_offset 1
说明:
auto_increment_increment = 1 ,每次插入数据,id++;auto_increment_offset =1 ,说明从1开始。
一般情况下auto_increment_increment=1,auto_increment_offset=1.是默认初始值。
可以在my.cnf文件中进行重新指定。auto_increment满足一个数学当纳法推导公式:
value=auto_increment_increment*N+auto_increment_offset
表中有auto_increment列,innodb用一种锁策略来保正这个auto_increment列值。
如果创建一个表,指定了auto_increment表。那么innodb会维护一个auto_increment计数器。
当访问这个计数器,innodb会使用表级锁来锁定这访问过程,这个发生在分析auto_increment
值的过程中,而不是在一个执行事务中。也就是说:这个访问发生在事务执行前面。
所以和这个锁不是发生整个事务过程中,仅仅是分析语句判断出auto_increment这一过程中。
aut