返回列表 发帖
查看: 1092|回复: 8

[已解决] 数据库迁移到云服务遇到1075 - Incorrect table definition

1

主题

5

回帖

6

积分

初学乍练

贡献
0 点
金币
0 个
发表于 2023-5-1 00:48:32 | 显示全部楼层 |阅读模式
这几天把数据库迁移到云服务上,一直报这个错[ERR] 1075 - Incorrect table definition; 查了一下好像是数据库版本的问题?之前数据库版本是mysql5.6.现在云服务器上的版本是mysql5.7. 不知道要如何解决,请大神们帮忙. 具体报错信息如下:

[ERR] 1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

--
-- AUTO_INCREMENT for table `pre_common_member_security`
--
ALTER TABLE `pre_common_member_security`
  MODIFY `securityid` mediumint(8) UNSIGNED NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT for table `pre_common_member_stat_field`
--
ALTER TABLE `pre_common_member_stat_field`
  MODIFY `optionid` mediumint(8) UNSIGNED NOT NULL AUTO_INCREMENT;


--
-- Indexes for table `pre_home_doing`
--
ALTER TABLE `pre_home_doing`
  ADD PRIMARY KEY (`doid`),
  ADD KEY `uid` (`uid`,`dateline`),
  ADD KEY `dateline` (`dateline`);

1 贡献+5 金币

最佳答案

mowenli 发表于 2023-5-2 15:55
我用的是azure的 Database for MySQL flexible server. 不知道是不是支持MyISAM引擎.  我看到网上很多人 ...

你可以直接问问azure的客服。但由于绝大多数云数据库都不支持MyISAM,个人猜测支持的可能性不大。
升级的话,必须是先升级到X3.5,此时支持了InnoDB,再上云数据库就不会有问题了。
同一个错误出现在不同的场景,含义也是不一样的,不能简单通过别人的报错内容来做推定的。

是否能升级到X3.5,试试就知道了,网站是可以做备份的,拿一份备份出来在一个单独的测试环境里操作升级,就知道能不能成功升级了。同时不会影响到你线上运行的生产环境站点。
回复

使用道具 举报

12

主题

1608

回帖

2717

积分

Giter

贡献
143 点
金币
353 个
发表于 2023-5-1 22:18:57 | 显示全部楼层
如果你是X3.4:请务必确认你所计划迁移的云数据库支持MyISAM引擎(似乎大部分新版本的云数据库都不支持MyISAM,而这是X3.4的核心组成部分)
否则你必须将站点升级到X3.5才能使用云数据库。X3.5原生支持InnoDB引擎,也就是大部分云数据库实际使用的引擎类型。
回复 支持 反对

使用道具 举报

5

主题

202

回帖

253

积分

炉火纯青

贡献
4 点
金币
20 个
QQ
发表于 2023-5-2 11:08:41 | 显示全部楼层
不是用后台备份的吧
Discuz!专业建站
.com 35元,dz专用主机
有偿服务QQ3971113142
回复 支持 反对

使用道具 举报

18

主题

1850

回帖

2837

积分

应用开发者

贡献
54 点
金币
624 个
QQ
发表于 2023-5-2 11:15:07 | 显示全部楼层
解决办法

1.云服务器使用mysql5.6 版本一致
2.根据提示将提示的key的增项目去掉
无限星辰工作室  好集导航 免费API
服务Discuz建站|定制|小程序|APP定制|故障维修|搬家|运维|挂马清理|防护|性能优化|安全运维|
服务理念:专业 诚信 友好QQ842062626 服务
回复 支持 反对

使用道具 举报

1

主题

5

回帖

6

积分

初学乍练

贡献
0 点
金币
0 个
 楼主| 发表于 2023-5-2 15:55:44 | 显示全部楼层
专家 发表于 2023-5-1 22:18
如果你是X3.4:请务必确认你所计划迁移的云数据库支持MyISAM引擎(似乎大部分新版本的云数据库都不支持MyIS ...

我用的是azure的 Database for MySQL flexible server. 不知道是不是支持MyISAM引擎.  我看到网上很多人在升级到3.5的过程中也出现我这样的问题. 所以我担心升级不到3.5
回复 支持 反对

使用道具 举报

1

主题

5

回帖

6

积分

初学乍练

贡献
0 点
金币
0 个
 楼主| 发表于 2023-5-2 15:56:12 | 显示全部楼层
niuniu1688 发表于 2023-5-2 11:08
不是用后台备份的吧

用后台自带的备份不会出现这个问题吗?
回复 支持 反对

使用道具 举报

1

主题

5

回帖

6

积分

初学乍练

贡献
0 点
金币
0 个
 楼主| 发表于 2023-5-2 15:57:07 | 显示全部楼层
crx349 发表于 2023-5-2 11:15
解决办法

1.云服务器使用mysql5.6 版本一致

1.云服务器使用mysql5.6 版本一致
azure只提供5.7和8.0的版本
2.根据提示将提示的key的增项目去掉
不知道要怎么做,可以指导一下吗.我是mysql小白
回复 支持 反对

使用道具 举报

12

主题

1608

回帖

2717

积分

Giter

贡献
143 点
金币
353 个
发表于 2023-5-2 16:12:17 | 显示全部楼层
mowenli 发表于 2023-5-2 15:55
我用的是azure的 Database for MySQL flexible server. 不知道是不是支持MyISAM引擎.  我看到网上很多人 ...

你可以直接问问azure的客服。但由于绝大多数云数据库都不支持MyISAM,个人猜测支持的可能性不大。
升级的话,必须是先升级到X3.5,此时支持了InnoDB,再上云数据库就不会有问题了。
同一个错误出现在不同的场景,含义也是不一样的,不能简单通过别人的报错内容来做推定的。

是否能升级到X3.5,试试就知道了,网站是可以做备份的,拿一份备份出来在一个单独的测试环境里操作升级,就知道能不能成功升级了。同时不会影响到你线上运行的生产环境站点。
回复 支持 反对

使用道具 举报

1

主题

5

回帖

6

积分

初学乍练

贡献
0 点
金币
0 个
 楼主| 发表于 2023-5-2 17:58:35 | 显示全部楼层
专家 发表于 2023-5-2 16:12
你可以直接问问azure的客服。但由于绝大多数云数据库都不支持MyISAM,个人猜测支持的可能性不大。
升级的 ...

好的 谢谢 我先试试能不能升级到3.5 如果还有问题再来咨询
谢谢你以及楼上的诸位大神
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-5-18 12:58 , Processed in 0.053815 second(s), 8 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表