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

Обновлено: 07.07.2024

Я пытался импортировать базу данных через phpMyAdmin. Мой файл базы данных a.sql и его размер составляет 1,2 ГБ Я пытаюсь импортировать это на локальном и phpMyAdmin говорит:

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

пожалуйста, помогите мне действительно нужно, чтобы это работало.

его из-за PHP, который имеет ограничение размера файла для загрузки.

Если у вас есть доступ к терминалу/оболочке, то вышеуказанные ответы @Kyotoweb будут работать.

один из способов сделать это заключается в том, что вы создаете .файл htaccess / ini для изменения настроек PHP, чтобы получить файл sql, загруженный через PHPmyAdmin.

Примечание Вы должны удалить этот файл после загрузки.

  1. открыть php.ini-файл из C:\wamp\bin\apache\Apache2.4.4\bin обновление следующее направление чем после перезагрузки WAMP сервера или перезапуска всех служб теперь загрузить данные с помощью функции импорта в phymyadmin. Применить второй шаг, если пока не загрузить данные.
  2. открыть config.по умолчанию.php-файл в c:\wamp\apps\phpmyadmin4.0.4\libraries (Откройте этот файл по к в phpmyadmin версии)
    Найти $cfg['ExecTimeLimit'] = 300; заменить на $cfg['ExecTimeLimit'] = 0;
    Теперь вы можете загружать данные.
  1. нажмите на значок WampServer - > MySQL - > mysql Consol
  2. введите пароль базы данных, как root in popup
  3. выберите имя базы данных для вставки данных, написав команду USE DATABASENAME
  4. затем загрузите исходный файл sql как SOURCE C:\FOLDER\database.sql
  5. нажмите enter для вставки данных.

использовать командную строку :

где MYDATABASE.SQL-это sql файл.

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

Давайте разберёмся, где именно находятся эти самые настройки и как их можно изменить. Оговорюсь сразу, что в данной статье речь пойдёт о локальном сервере DENWER, а ни о каком-либо ином. Если Вы используете другой локальный сервер, то данная статья Вам даст лишь только понимание того что нужно сделать, потому как точное название и местонахождение файла (возможно, нескольких файлов) с настройками того локального сервера что Вы используете, скорее всего, будет отличаться от тех, которые мы рассмотрим здесь.

Разочарование от того, что у нас ничего не получилось начинается с фразы:

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

которую мы имеем счастье лицезреть на картинке следующего вида:

Если в процессе импортирования базы Вы столкнулись с нечто подобным, то следует открыть файл php.ini. Он расположен по следующему адресу:

Z:/usr/local/php5/php.ini

Первая буква (Z) может быть иной, потому как при установке локального сервера DENWER можно выбирать любую, не занятую под уже имеющиеся у Вас диски букву и тут уж Вам виднее какую букву выбрали Вы. А дальнейший путь будет в точности совпадать.

Далее при помощи любого редактора кода открываем файл php.ini. Лучше это сделать при помощи редактора Notepad++, но если он у Вас не установлен, можно открыть при помощи редактора кода Блокнот, который входит в стандартную поставку системы Windows и не требует дополнительной установки.

К стати! Если вдруг кто то не в курсе, то редактор Notepad++ является бесплатной программой и скачать его можно на официальной странице .

Затем, при помощи поиска, в файле php.ini следует отыскать месторасположение следующих трёх переменных, меняя значения которых, можно изменять размер импортируемой базы:

upload_max_filesize; post_max_size; memory_limit

Забегая вперёд, скажу, что там будут ещё и четвёртая и пятая переменные, но о них чуточку позже.

По умолчанию (в Мегабайтах) эти переменные имеют следующие значения:

- upload_max_filesize – 2M

- post_max_size – 8M

- memory_limit – 128M

upload_max_filesize – это и есть та самая переменная, значение которой ограничивает максимальный размер импортируемой базы. По умолчанию, это ограничение составляет 2 Мегабайта. Если импортируемая Вами база больше этого значения, то его следует соответственно увеличить. Но также следует следить и за значениями переменных post_max_size и memory_limit. Они не должны быть меньше переменной upload_max_filesize.

Пример: Предположим нам следует импортировать базу размером 10 Мегабайт. В таком случае, для переменных, с учётом некоторого запаса нам следует выбрать приблизительно следующие значения: upload_max_filesize – 12M
post_max_size – 16M
memory_limit – 128M

После чего, любую базу размером до 10МГбайт можно будет импортировать, не опасаясь столкнуться с вышеописанной проблемой.

Теперь о тех самых четвёртой и пятой переменных, про которые я обещал рассказать Вам немного позже. Совершенно очевидно, что увеличение размера загружаемой базы, связано с соответствующим увеличением времени на её загрузку. Это время так же можно менять. Оно находится в переменной max_execution_time (это четвёртая переменная). Время загрузки задаётся в секундах (хотя там нет никаких единиц измерения). По умолчанию эта переменная равна 30 секундам:

max_execution_time = 30

На момент написания статьи у меня не было случаев, что бы мне не хватило времени на загрузку какой-либо базы данных, поэтому я значение этой переменной не менял. Возможно это потому, что я не сталкивался с импортом баз данных объёмом более 6-7 Мегабайт. Но, быть может у Вас возникнет такая ситуация, так что имейте это ввиду. И если решите увеличить время на загрузку в переменной max_execution_time, то в таком случае не забывайте отслеживать значение ещё одной (пятой) переменной. Зовут её max_input_time и по умолчанию её значение равно 60 секунд:

max_input_time = 60

Переменная max_input_time всегда должна иметь большее значение, чем max_execution_time.

Читайте также: