Mymps error: Duplicate entry '32767' for key 'PRIMARY'
error number: 1062
Date: 2018-11-29 @ 23:31
Script: http://zanqu.net/publish.php?action=input
网站运营中突然报错,经常有群友碰到这种问题。
首先碰到这种问题,通常有两种情况;
一、网站运营很长时间了
二、大量采集信息
那么这是什么情况呢?
其实,是数据库出了问题,我们来看看
首先我们看下信息表my_information的id字段类型smallint,那么这就很清楚了是ID自增到了极限。
那么有的朋友可能纳闷,我们先看下MYSQL手册关于TINYINT和SMALLINT和INT类型的说明:
TINYINT 一个很小的整数。有符号的范围是-128到127,无符号的范围是0到255
SMALLINT 一个小整数。有符号的范围是-32768到32767,无符号的范围是0到65535
MEDIUMINT一个中等大小整数。有符号的范围是-8388608到8388607,无符号的范围是0到16777215
INT一个正常大小整数。有符号的范围是-2147483648到2147483647,无符号的范围是0到4294967295。
看到这里就应该明白信息太多了,已经超出Smallint的范围就会报错。
解决方法: 编辑my_information表ID字段类型改为Int ,如果信息量很大也可以修改下长度。
比如我修改的 int(10),信息再大不怕。
好了,就OK了!