进度条卡在“正在导入…”是因某层静默拒绝数据流,需逐层排查:先确认PHP的upload_max_filesize与post_max_size设为相同值(如256M)并生效;Nginx需同步client_max_body_size,Apache需检查php_admin_value;MySQL需调大max_allowed_packet;phpMyAdmin需禁用ExecTimeLimit;超5MB应弃用Web界面改用命令行导入。

进度条卡在“正在导入…”不是界面假死,而是某一层已经 silently 拒绝或中断了数据流——必须按链路逐层排查,不能只刷新页面或重试。
检查 PHP 层是否被 upload_max_filesize 或 post_max_size 截断
这是最常被忽略的起点。哪怕你看到“上传中”,只要 post_max_size 小于 upload_max_filesize,PHP 在接收 POST 数据阶段就会静默丢弃超出部分,后续解析直接失败,页面变白或卡住。
-
upload_max_filesize和post_max_size必须设为相同值(例如都设为256M),且post_max_size不能小于前者 - 改完后必须确认生效位置:访问
phpinfo()页面,搜Loaded Configuration File,确保改的是那个文件 - Nginx 用户额外检查
client_max_body_size(常在http或server块),也要同步设为256M - Apache 用户注意:若用 PHP-FPM,还需检查
www.conf中是否有php_admin_value[max_execution_time],它会覆盖php.ini
确认 MySQL 的 max_allowed_packet 是否足够
页面卡住、无报错、只导入前几 KB,大概率是 max_allowed_packet 太小。MySQL 收到超长语句(比如含长文本的单条 INSERT)时不会报错,而是直接断开连接,phpMyAdmin 就卡在轮询状态。
- 查当前值:
mysql -u root -p -e "SHOW VARIABLES LIKE 'max_allowed_packet';" - 临时调大(仅本次会话):
SET GLOBAL max_allowed_packet = 268435456;(256MB) - 永久生效:在 MySQL 配置文件(
/etc/mysql/my.cnf)的[mysqld]段加max_allowed_packet = 256M,然后重启mysql服务 - 别漏掉 phpMyAdmin 自身限制:在
config.inc.php末尾加$cfg['ExecTimeLimit'] = 0;,禁用其内部轮询计时器
验证是否真在“执行”还是只是“前端渲染崩了”
尤其是含大量 MEDIUMTEXT、LONGTEXT 或 base64 字段的 SQL 文件,浏览器会尝试高亮、换行、折叠,内存瞬间飙满,页面无响应——这不是数据库慢,是前端卡死。
立即学习“PHP免费学习笔记(深入)”;
- 打开浏览器开发者工具(F12),切到
Network标签,看import.php请求是否已发出、是否返回 200、响应体是否为空或极短 - 如果请求根本没发出去,或发出去但没收到响应,大概率是 JS 渲染崩溃或内存溢出(Chrome 里能看到
Aw, Snap!) - 别指望禁用 JS 能解决:phpMyAdmin 的分块上传逻辑依赖 JS,禁用后连按钮都点不了
- 超过 5MB 就该放弃 Web 界面;超过 20MB,强制走命令行:
mysql -u root -p database_name
阿里云 RDS 用户要额外确认三项参数是否生效
阿里云 RDS 的 phpMyAdmin 通常是部署在 ECS 上、再连接 RDS 的前端,RDS 实例本身有独立参数限制,且默认不开放 LOAD DATA INFILE。
- 登录 RDS 控制台 →「参数设置」→ 确认并修改:
max_allowed_packet(建议填268435456)、wait_timeout(至少28800)、innodb_log_file_size(≥268435456) - 改完必须点「重启实例」,否则无效;ECS 上的 Web 服务和 PHP-FPM 也得同步重启
- RDS 默认禁用
LOAD DATA INFILE,若 SQL 文件里含该语句,会静默跳过或报错,需提前删掉 - 导出时避免勾选
Extended inserts,防止单条语句过大触发 RDS 的包限制
真正卡住的地方往往不在你盯着看的进度条上,而是在你没打开的配置文件、没重启的服务、或没意识到的浏览器内存限制里。每一步都要验证是否生效,而不是“我以为改了”。



















