You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入至phpMyAdmin报错#1071:指定键过长,如何解决?

解决MySQL #1071 - Specified key was too long错误(WordPress备份恢复)

遇到这个报错是因为你的WordPress备份里,部分索引字段的字节长度超过了MySQL默认的1000字节限制(通常是utf8mb4字符集下的varchar(255)字段,每个字符占4字节,255*4=1020),试试这几个解决办法:

方法一:修改SQL备份文件的索引长度

  • 打开你的SQL备份文件,搜索带KEY或INDEX的行,找到类似KEY meta_key (meta_key)这种针对长字符串字段的索引
  • 把索引字段改成指定长度,比如KEY meta_key (meta_key(191))(191*4=764,刚好低于1000字节限制)
  • 保存修改后的文件,重新在phpMyAdmin里导入

方法二:临时调整MySQL参数(需主机支持)

  • 进入phpMyAdmin的SQL命令行,执行以下三条命令:
    SET GLOBAL innodb_large_prefix = ON;
    SET GLOBAL innodb_file_format = Barracuda;
    SET GLOBAL innodb_file_per_table = ON;
    
  • 执行完再重新导入备份,不过部分共享主机(比如GoDaddy的基础共享计划)可能不让改全局参数,失败就换其他方法

方法三:强制切换数据库字符集

  • 在SQL文件最开头添加以下代码,把数据库字符集改成utf8(每个字符占3字节,255*3=765<1000):
    SET NAMES utf8;
    ALTER DATABASE your_db_name CHARACTER SET utf8 COLLATE utf8_general_ci;
    
    记得把your_db_name换成你实际的数据库名称
  • 保存后再导入整个SQL文件

方法四:用WP-CLI导入(有SSH权限的话)

  • 如果GoDaddy给你开了SSH访问,直接用WP-CLI命令导入,它会自动适配数据库的索引限制:
    wp db import your_backup.sql
    
    这是WordPress场景下最省心的方式,不用手动改文件

内容的提问来源于stack exchange,提问作者Brandon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 20:32:11