导入失败主因是phpMyAdmin导出默认选项与目标MySQL环境不匹配,涉及排序规则(utf8mb4_0900_ai_ci不兼容)、SQL模式冲突、二进制字段处理及wp_options中siteurl/home地址残留四类问题。

导入失败不是导出文件本身坏了,而是导出时默认选项和目标环境不匹配——尤其是排序规则、SQL模式、二进制字段处理这三处,新旧版本 phpMyAdmin 和 MySQL 之间存在隐性断层。
utf8mb4_0900_ai_ci 排序规则不被目标 MySQL 支持
MySQL 8.0.28+ 默认用 utf8mb4_0900_ai_ci,但很多生产环境(尤其云数据库、低版本 MySQL 或部分主机商)只认 utf8mb4_unicode_ci。导入时直接报错 Unknown collation: 'utf8mb4_0900_ai_ci',且不提示具体哪一行。
- 导出前,在 phpMyAdmin 导出页选
Custom→ 展开「格式特定选项」→ 取消勾选Use hexadecimal for binary fields(它会触发建库语句硬编码 collation) - 手动跳过建库语句:在「对象」区域取消勾选
CREATE DATABASE和CREATE TABLE(只导数据),再用目标库已有的结构导入 - 导出后用文本编辑器打开
.sql文件,全局替换DEFAULT COLLATE=utf8mb4_0900_ai_ci为DEFAULT COLLATE=utf8mb4_unicode_ci
SQL 模式不兼容导致语法报错
phpMyAdmin 导出时若启用 SQL compatibility mode(如设为 MYSQL40 或 NONE),可能生成带反引号包裹的标识符或禁用严格模式的语句;而目标 MySQL 开启了 STRICT_TRANS_TABLES 或 ONLY_FULL_GROUP_BY,就会在导入时卡在某条 INSERT 上,错误信息常是 You have an error in your SQL syntax 或 Incorrect integer value。
Word报告自动生成神器。自动生成专业Word文档报告,支持模板填充、目录生成、表格/图表插入、页眉页脚、多级标题、样式主题、批量邮件合并。当用户需要生成Word报告、创建合同文档、批量生成通知/证书、填充Word模板、制作商业计划书时触发。
- 导出页选择
Custom→ 在「格式特定选项」里把SQL compatibility mode设为NONE(最宽松) - 确认目标 MySQL 的
sql_mode:登录后执行SELECT @@sql_mode;,若含STRICT_TRANS_TABLES,导入前可临时执行SET SESSION sql_mode = '';(仅当前会话) - 避免导出
wp_options表里的 serialized data 字段被截断:导出时勾选Disable foreign key checks,否则外键约束可能中断导入流程
WordPress 表前缀或 siteurl/home 地址残留引发逻辑错误
导入成功但网站打不开,常见于 wp_options 表中 siteurl 和 home 还是旧地址(比如本地 http://localhost/wordpress),或表前缀不一致(导出的是 wp_,目标库用的是 mydb_),导致 WordPress 启动时连数据库都连不上,直接报“建立数据库连接时出错”。
立即学习“PHP免费学习笔记(深入)”;
- 导入前,在 phpMyAdmin 中先清空目标库(或新建空库),确保无残留
wp_options数据干扰 - 导入完成后,立刻进
wp_options表,把option_name为siteurl和home的两行option_value改成新环境的完整 URL(注意末尾不加斜杠) - 如果目标库用了不同前缀,导出时在「对象」区域点「自定义」→ 修改
Table prefix为实际前缀(如mydb_),或导入后用 SQL 批量更新:UPDATE mydb_options SET option_value = REPLACE(option_value, 'http://old', 'https://new') WHERE option_name IN ('siteurl','home');
真正卡住人的往往不是大问题,而是导出时没留意「格式特定选项」里那几个默认勾选的复选框,以及导入后忘了改 wp_options 里的两个字段——它们不会报错,但会让整个站静默失效。


















