我在php 7.0.7上使用phpmyadmin(版本信息:4.0.10deb1)& nginx 1.4.6。当我尝试将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
但没有改变。导入将失败。我该如何解决这个问题?感谢。
答案 0 :(得分:3)
我查看了我的DigitalOcean技术支持并找出原因:我重新启动了Nginx,但没有重新启动php-fpm这是Nginx的PHP进程。
在我尝试service php7.0-fpm restart
之后,phpMyAdmin现在显示(Max:150MiB)导入限制。进口工作!
答案 1 :(得分:1)
您必须通过在[mysqld]部分下包含单行来更改my.ini或my.cnf文件的mysql服务器设置:
max_allowed_packet=500M
然后重启MySQL服务器。在500M的情况下使用另一个值是不够的。
答案 2 :(得分:0)
在我的情况下,经过长时间的搜索,我为我找到了一个新世界,它节省了太多时间和精力(即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 @公共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).
仅此而已。
希望这可以帮助每个喜欢它的人。