商城首页欢迎来到中国正版软件门户

您的位置:首页 >XAMPP导入数据库提示文件过大怎么解决

XAMPP导入数据库提示文件过大怎么解决

  发布于2026-04-13 阅读(0)

扫一扫,手机访问

需修改 php.ini 中 upload_max_filesize 和 post_max_size 并重启 Apache;确认 Loaded Configuration File 路径后修改对应文件,建议设为相同值(如 128M);超大文件推荐用命令行 mysql -u root -p dbname < file.sql 导入。

解决 XAMPP 导入数据库时提示“文件超出上传大小限制”的解决方法

修改 php.ini 中的 upload_max_filesize 和 post_max_size

XAMPP 导入大 SQL 文件失败,根本原因通常是 PHP 默认限制了上传文件大小(upload_max_filesize)和 POST 数据总量(post_max_size)。这两个值默认通常只有 2M 或 8M,远小于常见导出的数据库备份文件。

实操建议:

  • 打开 XAMPP 安装目录下的 php\php.ini(注意:不是 php\php.ini-developmentphp\php.ini-production,而是被 Apache 实际加载的那个)
  • 搜索并修改两处配置(建议设为相同值,避免其中一个先触发限制):
    upload_max_filesize = 128M
    post_max_size = 128M
  • 改完后必须重启 Apache 才生效——仅重启 MySQL 不起作用
  • 验证是否生效:创建一个 info.php 文件,内容为 <?php phpinfo(); ?>,访问 http://localhost/info.php,搜索确认这两项值已更新

检查 php.ini 是否被正确加载

很多人改了 php.ini 却没效果,是因为 Apache 加载的是另一个路径下的配置文件,或者 XAMPP 控制面板里启用了不同版本的 PHP。

实操建议:

  • http://localhost/dashboard/phpinfo.php(或你自己写的 info.php)中查找 Loaded Configuration File 这一行,它明确告诉你当前生效的是哪个 php.ini 路径
  • 如果显示路径是 php\php.ini,但你改的是别的文件,就白改了
  • 若使用 XAMPP 多版本 PHP 切换(如通过控制面板右上角切换),务必确认当前启用的 PHP 版本对应的是哪个 php.ini
  • Windows 下注意文件可能被系统隐藏或权限锁定,用管理员权限编辑更稳妥

替代方案:用命令行 mysql 直接导入

当 SQL 文件极大(比如 >200MB)或反复调试图形界面失败时,绕过 phpMyAdmin 的 Web 上传机制是最可靠的方式。

实操建议:

  • 确保 MySQL 服务正在运行(XAMPP 控制面板中 MySQL 显示“Running”)
  • 打开终端(Windows 用 CMD 或 PowerShell),进入 XAMPP 的 MySQL bin 目录:
    cd C:\xampp\mysql\bin
  • 执行导入命令(假设数据库名为 mydb,SQL 文件路径为 C:\backup\dump.sql):
    mysql -u root -p mydb < C:\backup\dump.sql
  • 如果提示 mysql 命令未识别,请先将 C:\xampp\mysql\bin 加入系统 PATH,或直接在该目录下运行命令
  • 注意:该方式不经过 PHP,因此完全不受 upload_max_filesize 限制,也更快、更稳定

phpMyAdmin 自身的 import 设置(可选补充)

phpMyAdmin 有前端层面的文件大小提示,但它只是读取 PHP 配置后展示,并不独立控制限制。不过它的配置文件 config.inc.php 里有个容易被忽略的开关。

实操建议:

  • 编辑 phpMyAdmin\config.inc.php,查找 $cfg['UploadDir']
  • 如果该配置被注释或为空,可以取消注释并设为一个本地子目录(如 './upload'),然后把 SQL 文件放进这个目录,再在 phpMyAdmin 导入界面下拉选择“从服务器上传目录”,就能绕过浏览器上传流程
  • 这个方法依赖于 upload 目录存在且 Web 服务器有读取权限,适合对安全性要求不高、临时导入的场景
  • 注意:XAMPP 默认关闭此功能,启用前需确认 UploadDir 对应目录已创建且非空
改完配置却仍报错,大概率是没找对 php.ini 路径,或忘了重启 Apache。命令行导入虽然要敲几行字,但省去所有上传环节的不确定性,对大于 50MB 的文件几乎总是首选。
本文转载于:互联网 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注