phpMyAdmin导入文件大小限制2M

phpMyAdmin import file size 2M limit

我在 php 7.0.7 & nginx 1.4.6 上使用 phpmyadmin(版本信息:4.0.10deb1)。当我尝试将 csv 文件导入其中一个表时,我看到 phpmyadmin 屏幕上指示的允许的最大大小为 2,048KiB 。然后我更改了 php.ini 中的设置(/etc/php/7.0/fpm/php.ini & /etc/php/7.0/cli/php.ini):

upload_max_filesize = 150M
post_max_size = 150M
memory_limit = -1
max_execution_time = 5000
max_input_time = 5000

更改了 /etc/nginx/nginx.conf 中的设置:

client_max_body_size 150M;

并重新启动 nginx:

service nginx restart

但没有任何改变。而且导入会失败。我该如何解决这个问题?谢谢

您还必须更改 mysql 服务器设置 my.ini 或 my.cnf 文件,方法是在 [mysqld] 部分下包含一行:

max_allowed_packet=500M

然后重新启动 MySQL 服务器。如果 500M 不够,请使用另一个值。

我咨询了我的DigitalOcean技术支持,发现了原因:我重启了Nginx,但没有重启php-fpm,这是Nginx的PHP进程。

在我尝试 service php7.0-fpm restart 之后,phpMyAdmin 现在显示(最大:150MiB)导入限制。并且导入有效!

就我而言,经过长时间的搜索,我为自己找到了一个新世界,它节省了太多时间和精力(即 SSH)

正在通过 SCP 上传然后通过 SSH 导入。

优点:

1- 与传统方法相比非常快。

2- 没有大小限制,无需编辑任何文件。

缺点:

无非是因为它不是可视化过程所以需要输入一些命令,你需要一些时间来熟悉它,你可能需要继续搜索一段时间但老实说最后你就会知道值得。

  • 因此,首先将 db 文件上传到服务器中的某处(上传到哪里并不重要)。

    scp path to/your file.sql user@server:/path-to-save-the-file(出现提示时输入密码)(capnel 用户,显示在您的 cpanel 文件管理器的顶部,例如 home3/user/public_html/..)

请注意以下几点:

a. in some cases you will need a ssh key so look it up if that's your case.
b. If you are uploading folder and its content you need to add -r flag(i.e. scp -r    ).
c. in my case i was uploading to aws cloud so -i flag is required in this case.
  • 现在,通过 ssh 连接到你的服务器(我有 windows 10 台机器,所以从 powershell,bash 或 cmd)

    ssh user@server(出现提示时输入密码)

在我的 aws 案例中,它是 ( ssh -i key.pem ec2-user@Public IPv4 DNS )

cd /path-where-you- have-saved-the-file

然后..

mysql -u username -p databsename < your-file.sql (replace username and database name) (enter db user password when prompt).