IIS/MySQL/PHP环境下phpMyAdmin导入报错:未收到导入数据
phpMyAdmin数据库导入失败排查方案(环境:IIS10、MySQL8、PHP8.1、phpMyAdmin5.2)
确认phpMyAdmin对应的PHP配置
- 登录phpMyAdmin首页,拉到最底部查看
PHP信息,找到Loaded Configuration File,确认是否为你修改过的PHP配置文件(IIS中可能存在多份php.ini,比如站点专属配置)。 - 检查以下参数值(确保
post_max_size大于upload_max_filesize):upload_max_filesize = 100Mpost_max_size = 120Mmax_execution_time = 300max_input_time = 300memory_limit = 256M
- 修改后重启IIS服务及PHP-FPM(若使用FastCGI模式)。
- 登录phpMyAdmin首页,拉到最底部查看
检查IIS请求限制
- 打开IIS管理器,定位到phpMyAdmin所属站点,双击
请求筛选。 - 右键选择
编辑功能设置,将允许的最大内容长度设为大于100MB的值(单位为字节,100MB对应104857600,建议设为125829120即120MB)。 - 检查FastCGI配置:在IIS的
FastCGI设置中,找到PHP对应的应用程序池,确认请求超时、最大请求长度未设置过小限制。
- 打开IIS管理器,定位到phpMyAdmin所属站点,双击
验证phpMyAdmin自身配置
- 打开phpMyAdmin根目录下的
config.inc.php文件,检查$cfg['MaxUploadSize']参数,确保其值不小于你的SQL文件大小(默认会读取PHP的upload_max_filesize,若手动设置过小需调整)。 - 若配置了
$cfg['UploadDir'],需确保该目录存在且IIS应用程序池身份(如IUSR、ApplicationPoolIdentity)拥有读写权限;未配置则跳过此步。
- 打开phpMyAdmin根目录下的
检查临时目录与权限
- 在PHP信息中找到
upload_tmp_dir,确认该目录存在且应用程序池身份拥有读写权限(上传文件会先存入临时目录,无权限会导致数据丢失)。 - 确认phpMyAdmin所在目录的权限,确保应用程序池身份可读写该目录下的文件。
- 在PHP信息中找到
排查浏览器与网络干扰
- 更换Chrome、Firefox等不同浏览器尝试导入,排除浏览器缓存或插件拦截。
- 检查服务器Windows防火墙、内网防火墙是否限制了POST请求的大小。
替代导入方案
- 使用MySQL命令行导入:执行
mysql -u 用户名 -p 数据库名 < 本地SQL文件路径(需确保MySQL命令行工具在PATH中)。 - 通过FTP将SQL文件上传至服务器指定目录,在phpMyAdmin中选择
从服务器上的文件导入(需提前配置$cfg['UploadDir']并赋予权限)。
- 使用MySQL命令行导入:执行
内容的提问来源于stack exchange,提问作者RogerV
相关产品推荐
相关产品推荐

