FAQ系列 | 添加自增列失败

简介: FAQ系列 | 添加自增列失败

0、导读

想往一个表里添加一个自增列做主键,居然失败报告无法读取,这是怎么回事?

1、问题描述

有位朋友在升级discuz论坛数据库时遇到问题了,想给一个表添加自增列做主键,结果发生下面的报错:

mysql> ALTER TABLE pre_common_credit_log ADD `logid` mediumint(8) unsigned NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (logid) ;


ERROR 1467 (HY000): Failed to read auto-increment value from storage engine

2、原因分析

从报错信息来看,第一反应是:数据表损坏了。不过,再仔细想想,肯定不是啊,否则报错也不是这个了,而是像下面这样的了:

1030 Got error -1 from storage engine

再仔细一想,更大的可能性是:表里的总数据量,超过了mediumint最大值所致。

让朋友把自增列数据类型改成int或者bigint,果真就好了。

3、其他建议

建议使用discuz的同学们可以考虑这么做:

  • 如果启用了抢楼功能,那么就把post相关的表继续保留使用MyISAM引擎。或者自己动手改造代码,把抢楼功能中的楼梯值用redis来存储;
  • 如果没有启用抢楼功能,那么就可以放心的把所有表引擎改成InnoDB了。

顺便,再次吐槽一下discuz的某些功能设计,比如把session表用HEAP引擎,其他表默认引擎还是MyISAM。不过,这并不影响discuz成为国内最优秀的论坛解决方案(没办法,没更好的了,占了先机)。

            </div>
相关文章
|
Ubuntu Linux
Centos or Ubuntu 重新安装network服务
Centos or Ubuntu 重新安装network服务
|
缓存 数据库
实现微信扫描二维码关注公众号,直接注册登录网站
互联网时代,不管是以哪种形式存在的应用,移动端或者PC网站,注册登录功能是用户访问应用的第一步,可以说,注册登录用的方不方便在一定程度上能决定用户的去留。对于用户来说,能够越简单,不用动手做过多操作就能达到同样效果的功能是最好不过的。今天就来介绍一下PC网站如何通过扫描微信二维码关注公众号,直接完成注册登录。
2279 0
实现微信扫描二维码关注公众号,直接注册登录网站
|
JavaScript 前端开发
vue实现公告文字横向滚动
vue实现公告文字横向滚动
1978 0
|
6月前
|
缓存 JSON 前端开发
最受欢迎的三方库之harmony-utils
harmony-utils 是一款功能丰富且易于使用的 HarmonyOS 工具库,涵盖 APP、设备、屏幕、授权、通知、文件操作、加解密等多种常用功能,帮助开发者高效构建鸿蒙应用。体积小巧(仅约 130KB),性能优越,适用于 OpenHarmony API 12 及以上版本。
302 0
|
数据采集 运维 数据挖掘
一文速学-Pandas异常值检测及处理操作各类方法详解+代码展示
一文速学-Pandas异常值检测及处理操作各类方法详解+代码展示
1756 0
一文速学-Pandas异常值检测及处理操作各类方法详解+代码展示
|
SQL 消息中间件 Java
SpringBoot整合RocketMQ发送消息过滤
消息者在进行消息订阅时,除了可以指定要订阅消息的Topic外,还可以对指定Topic中的消息根据指定条件进行过滤,即可以订阅比Topic更加细粒度的消息类型。 对于指定Topic消息的过滤有两种过滤方式:Tag过滤与SQL过滤
|
SQL 安全 NoSQL
告别shiro-cas单点登录集成库,这款简单且强壮的Java Web安全引擎pac4j你值得拥有
告别shiro-cas单点登录集成库,这款简单且强壮的Java Web安全引擎pac4j你值得拥有
912 0
告别shiro-cas单点登录集成库,这款简单且强壮的Java Web安全引擎pac4j你值得拥有
|
存储 Linux 计算机视觉
Linux之RAID介绍、软RAID6实操配置(失望攒够了就放手,不打扰是我最后的温柔)(二)
Linux之RAID介绍、软RAID6实操配置(失望攒够了就放手,不打扰是我最后的温柔)(二)
731 0
Linux之RAID介绍、软RAID6实操配置(失望攒够了就放手,不打扰是我最后的温柔)(二)
|
移动开发 前端开发 Java
JAVA Web入门之HTML5及CSS的使用与实战(超详细,附源码)
JAVA Web入门之HTML5及CSS的使用与实战(超详细,附源码)
401 0
JAVA Web入门之HTML5及CSS的使用与实战(超详细,附源码)