phpMyAdmin报“文件未找到”实为上传中途被截断,根本原因在于PHP接收POST数据失败($_FILES为空),常见于post_max_size或upload_max_filesize过小、Nginx的client_max_body_size限制、网络超时等,需同步调整PHP和Web服务器配置并重启服务。

phpMyAdmin报“文件未找到”不是路径问题,而是上传中途被截断
这个提示根本不是说服务器上没那个文件,而是PHP在接收上传时就失败了,$_FILES数组压根为空,所以phpMyAdmin连文件名都拿不到。常见于大文件、网络不稳定或超时场景,和你本地文件是否存在无关。
典型表现:
• 选择文件后点“执行”,页面瞬间跳回导入页,无进度条
• 浏览器开发者工具 Network 标签里,import.php 请求返回 200 但响应体极小(几十字节)
• error_log 中出现 PHP Warning: POST Content-Length of XXX bytes exceeds the limit
- 检查
post_max_size是否小于文件大小(注意单位:M ≠ MB,必须写128M,不能写128MB) -
upload_max_filesize必须 ≤post_max_size,否则上传直接被PHP拦截 - 如果用了 Nginx,还得确认
client_max_body_size(例如设为512m),它比 PHP 层更早拦截请求 - 改完配置后,Apache 要
sudo systemctl restart apache2,Nginx + PHP-FPM 要分别重启,漏一个就白调
用 source 命令导入时提示“File 'xxx.sql' not found”
这是 MySQL 客户端在找文件时的路径错误,source 只认**MySQL 服务进程当前工作目录下的相对路径**,不是你终端所在的路径,也不是绝对路径(除非加 ./ 或完整绝对路径)。
- 先确认文件是否真在服务器上:
ls -l /home/user/data/dump.sql - 进 MySQL 后别急着
source,先用SELECT @@basedir;看 MySQL 安装根目录,再用SELECT @@datadir;看数据目录——source默认在这两个目录下找 - 稳妥做法:把 SQL 文件放到
/var/lib/mysql-files/(需secure_file_priv允许),然后用source /var/lib/mysql-files/dump.sql; - 或者用绝对路径:
source /home/user/data/dump.sql;(注意 Linux 下路径用正斜杠,Windows 用双反斜杠或正斜杠均可)
phpMyAdmin 显示“没有接收到要导入的数据”却没报错
这通常发生在你误点了“从 Web 服务器上传目录”里的文件,但该功能依赖 phpMyAdmin 配置的 $cfg['UploadDir'],且要求文件已提前放进去、权限可读、路径在白名单内——实际几乎没人配,等于形同虚设。
- 别碰“从 Web 服务器上传目录”这个选项,它不自动扫描,也不校验,点了就静默失败
- 如果你真想用它,得手动编辑
config.inc.php,加上:$cfg['UploadDir'] = '/var/www/upload';,再把 SQL 文件chmod 644放进去,并确保该目录在 Web 根目录下且可被 PHP 读取 - 绝大多数情况,直接用顶部“文件选择”上传按钮最可靠;所谓“未找到”,其实是上传阶段就丢了,不是导入阶段
导入后表存在但数据为空,怀疑文件没读到
这种“半成功”状态最容易误判为文件未加载,其实是 SQL 文件开头有语法错误(比如注释格式不对、BOM 头、意外换行),导致 MySQL 解析器在第一条语句就退出,后续所有 INSERT 全被跳过。
- 用
head -n 20 dump.sql | cat -A检查前20行:有没有^M(Windows 换行)、^\xEF\xBB\xBF(UTF-8 BOM) - 用
mysql -u root -p -e "source /path/to/dump.sql;" 2>&1 | head -20直接看命令行报错,比 phpMyAdmin 的 UI 提示准得多 - 如果文件是 zip 压缩包,phpMyAdmin 不支持直接传 zip 导入,必须先解压——它不会自动解包,也不会报错,只会静默忽略
真正卡住的地方,往往不在“找不到文件”这个字面意思上,而是在上传链路的某一层被无声截断,或是 MySQL 解析器在第一行就拒收。验证时少信界面提示,多看日志和命令行反馈。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











