Как увеличить размер загружаемого файла в phpMyAdmin

Вопрос или проблема

Я не могу изменить размер файла, который phpmyadmin принимает для импорта баз данных на моем тестовом сервере.

Я изменил все значения, о которых имею представление в my.cnf:

max_packet_size
Key_buffer

или размер загружаемого файла и значение max_post_size в каждом файле php.ini, который я нашел в системе.

Принятый размер файла на экране импорта все еще остается 8,192kib.

Чтобы увеличить размер импорта файла MySQL phpmyadmin в Ubuntu 16.04 или новее, выполните следующие шаги. В новейшей версии Ubuntu у вас может быть либо PHP 5, либо PHP 7.

Шаг 1: откройте php.ini соответствующей версии PHP.

  • Для PHP v5.0

    sudo -H gedit /etc/php5/apache2/php.ini
    
  • Для PHP v7.0

    sudo -H gedit /etc/php/7.0/apache2/php.ini
    
  • Для PHP v7.1

    sudo -H gedit /etc/php/7.1/apache2/php.ini
    
  • Для PHP v7.2

    sudo -H gedit /etc/php/7.2/apache2/php.ini
    
  • Для PHP v7.3

    sudo -H gedit /etc/php/7.3/apache2/php.ini
    

Шаг 2: Теперь увеличьте следующие параметры в файле php.ini.

memory_limit = 1500M

post_max_size = 1500M

upload_max_filesize = 1500M

Пожалуйста, обратите внимание: post_max_size должен быть больше, чем upload_max_filesize

Шаг 3: Теперь вы должны перезапустить ваш apache сервер, чтобы изменения вступили в силу.

sudo service apache2 restart

Первое, что нужно проверить (или попросить вашего хостинг-провайдера проверить) — это значения max_execution_time, upload_max_filesize, memory_limit и post_max_size в файле конфигурации php.ini. Все эти три настройки ограничивают максимальный размер данных, которые могут быть отправлены и обработаны PHP.

Обратите внимание, что post_max_size должен быть больше, чем upload_max_filesize.

  1. создайте страницу info.php и проверьте все детали о файле

    <?php 
      phpinfo();
    ?>
    
  2. запустите в вашем браузере, найдите upload_max_filesize и post_max_size, измените на значение по умолчанию 2M на 80M.

  3. Запустите

    sudo -H gedit /etc/php5/apache2/php.ini
    
  4. измените оба значения upload_max_filesize и post_max_size
    измените значение по умолчанию с 2M на 80M

  5. Перезапустите apache

    sudo /etc/init.d/apache2 restart
    

Установите переменные upload_max_filesize, post_max_size, memory_limit в php.ini на правильные значения и перезапустите сервер, тогда это должно работать.
Если это не работает, проверьте с помощью phpinfo(), отредактировали ли вы нужный php.ini.

Если вы используете Virtualmin, Webmin или Usermin, выполните следующие 2 шага в соответствии с изображением:
1.
step 1 image

2.
step 1 image

Если ничего из этого не работает, это может означать, что Phpmyadmin использует совершенно другой файл!
В конце концов, я понял, что мне нужно было редактировать файл /etc/phpmyadmin/apache.conf, затем перезапустить Apache.

.

Ответ или решение

Увеличение максимального размера загружаемых файлов в phpMyAdmin является распространенной задачей для администраторов серверов и веб-программистов. Это необходимо, когда размер вашей базы данных превышает текущие ограничения на загрузку, установленные в вашем сервере. В данной статье мы рассмотрим, как решить эту проблему, настроив несколько параметров как на уровне PHP, так и MySQL, а также приведем примеры применения.

Теория

Первоначально следует понимать, что на размер загружаемого файла может влиять несколько параметров:

  1. PHP параметры:

    • upload_max_filesize: определяет максимальный размер загружаемого файла.
    • post_max_size: максимальный размер данных, которые могут быть приняты методом POST. Должен быть больше, чем upload_max_filesize.
    • memory_limit: максимальное количество памяти, которое скрипт может использовать.
  2. MySQL параметры:

    • max_allowed_packet: максимальный размер одного запроса или пакета данных, который сервер может обработать.
  3. Настройки веб-сервера (Apache или Nginx):

    • Например, ограничения на уровне модулей, обрабатывающих POST запросы.

Пример

Рассмотрим пример конфигурации на сервере с использованием Apache и PHP версии 7.x на Ubuntu 16.04:

  1. Редактирование php.ini:

    В зависимости от версии PHP, вам нужно найти и отредактировать файл php.ini:

    sudo -H gedit /etc/php/7.0/apache2/php.ini

    Здесь измените следующие параметры:

    upload_max_filesize = 150M
    post_max_size = 150M
    memory_limit = 512M

    Ключевой момент: post_max_size всегда должен быть больше upload_max_filesize.

  2. Обновление MySQL конфигурации:

    В файле конфигурации MySQL my.cnf измените max_allowed_packet:

    [mysqld]
    max_allowed_packet=128M
  3. Перезапуск серверов:

    После каждого изменения конфигурации, перезапустите службы, чтобы они приняли новые настройки.

    sudo service apache2 restart
    sudo service mysql restart
  4. Проверка изменений с помощью phpinfo()

    Создайте файл info.php в вашей веб-директории:

    <?php
    phpinfo();
    ?>

    Откройте этот файл в браузере и убедитесь, что параметры upload_max_filesize и post_max_size установлены корректно.

Применение на практике

Некоторые пользователи могут столкнуться с тем, что настройки не принимаются даже после выполнения вышеуказанных шагов. В таком случае проверьте:

  • Альтернативные файлы конфигурации, такие как /etc/phpmyadmin/apache.conf, особенно если изменения в php.ini не помогают.

  • Правая версия php.ini: Используйте phpinfo() для проверки, какой именно файл php.ini использует ваша система.

  • Виртуальные панели управления, такие как Virtualmin или Webmin, имеют свои собственные настройки и могут накладывать ограничения, обойдите их соответственно.

Следуя предложенным шагам, вы сможете увеличить допустимый размер загрузки файлов в phpMyAdmin, что позволит управлять большими базами данных без рисков нарушения целостности данных или ошибок, вызванных превышением лимитов. Принимая во внимание всю информацию, данная процедура позволит вам более эффективно работать с диапазоном задач, связанных с управлением базами данных и настройкой серверов.

Оцените материал
Добавить комментарий

Капча загружается...