Не удается импортировать базу данных из-за слишком большого размера файла phpmyadmin - PullRequest
57 голосов
/ 07 марта 2012

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

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

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

Ответы [ 12 ]

68 голосов
/ 12 марта 2014

Для загрузки данных большого размера с использованием phpmyadmin Выполните следующие шаги.

  1. Откройте файл php.ini из C: \ wamp \ bin \ apache \ Apache2.4.4 \ bin Обновите следующие строки
    max_execution_time = 259200
    max_input_time = 259200
    memory_limit = 1000M
    upload_max_filesize = 750M
    post_max_size = 750M
    чем после перезапуска сервера wamp или перезапуска всех сервисов. Теперь загрузите данные, используя функцию импорта в phymyadmin.Примените второй шаг, если пока не загружаете данные.
  2. открыть файл config.default.php в каталоге c: \ wamp \ apps \ phpmyadmin4.0.4 \ library (Открыть этот файл в соответствии с версией phpmyadmin)
    Найти $cfg['ExecTimeLimit'] = 300; Заменить на $cfg['ExecTimeLimit'] = 0;
    Теперь вы можете загружать данные.

Вы также можете загружать базы данных большого размера, используя MySQL Console, как показано ниже.

  1. Нажмите значок WampServer -> MySQL -> Консоль MySQL
  2. Введите пароль вашей базы данных, например, root в всплывающем окне
  3. Выберите имя базы данных для вставки данных, написавКоманда USE DATABASENAME
  4. Затем загрузите исходный файл sql как SOURCE C:\FOLDER\database.sql
  5. Нажмите Enter для вставки данных.

Примечание : Вы можетеНе загружайте сжатый файл базы данных, например database.sql.zip или database.sql.gz, сначала нужно извлечь его.В противном случае консоль просто рухнет.

64 голосов
/ 07 марта 2012

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

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

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

php_value upload_max_filesize 120M //file size
php_value post_max_size 120M
php_value max_execution_time 200
php_value max_input_time 200

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

26 голосов
/ 06 июня 2013

Вот что я сделал:

  1. Ушел на мой XAMPP, установленный директой C:\xampp\php
  2. Откройте файл «Настройки конфигурации» с именем php.ini с помощью текстового редактора, желательно вы также можете использовать блокнот для Windows.
  3. Где-то рядом на линии № 886, пожалуйста, обновите его до upload_max_filesize = 128M
  4. Аналогично в строке № 735 post_max_size = 128M
  5. В линии № 442 max_execution_time = 300
  6. В линии № 452 max_input_time = 60
  7. Перезагрузите Apache с панели управления XAMPP или с помощью CMD в Windows https://stackoverflow.com/a/6723485/969092

Готово!

17 голосов
/ 07 марта 2012

Используйте командную строку:

mysql.exe -u USERNAME -p PASSWORD DATABASENAME < MYDATABASE.sql

, где MYDATABASE.sql - ваш файл sql.

5 голосов
/ 07 марта 2012

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

3 голосов
/ 11 декабря 2017
  1. Установите следующие значения в файле php.ini (C:\xampp\php\)

    • max_execution_time = 0
    • max_input_time=259200
    • memory_limit = 1000M
    • upload_max_filesize = 750M
    • post_max_size = 750M
  2. Открыть файл config.default (C: \ xampp \ phpMyAdmin \ library\ config.default) и установите значение следующим образом:

    • $ cfg ['ExecTimeLimit'] = 0;
  3. Затем откройте конфигурациюФайл .inc (C: \ xampp \ phpMyAdmin \ config.inc).и вставьте строку ниже:

    • $cfg['UploadDir'] = 'upload';
  4. Перейдите в папку phpMyAdmin (C:\xampp\phpMyAdmin) и создайте папку с именем upload и вставьтеВаша база данных во вновь созданную папку загрузки (не нужно архивировать)

  5. Наконец, перейдите на phpMyAdmin и загрузите свою базу данных (Пожалуйста, выберите вашу базу данных в раскрывающемся списке)

upload image

Это все детка!:)

* Это занимает много времени. В моем БД (266 МБ) для загрузки требуется 50 минут.Так что наберитесь терпения!*

2 голосов
/ 09 июня 2016

для ubuntu 14.04:'upload_max_size' затем замените эту единственную строку на эти строки: max_execution_time = 259200 max_input_time = 259200 memory_limit = 1000M upload_max_filesize = 750M post_max_size = 750M

3 - сохраните php.ini и закройте редактор 4-перезапустите apache2: служба sudo apache2 перезапустите 5 - теперь откройте localhost: // phpmyadmin / в браузере и загрузите вашу базу данных.sql
1 голос
/ 28 января 2017

Вы также можете попробовать сжать (сжать) файл. Иногда это работает для меня, если я не могу получить php.ini для phpmyadmin. Если архивирование уменьшает размер файла ниже максимального размера, это может сработать!

1 голос
/ 09 марта 2015

Вам не нужно редактировать php.ini или любую другую вещь. Я предлагаю лучшую вещь, так как просто используйте MySQL WorkBench .

ПРОСТО СЛЕДУЕТ ЗА ШАГАМИ.

Установить MySQL WorkBench 6.0

А В «Панели навигации» (слева) есть опция «Импорт данных» в разделе «УПРАВЛЕНИЕ». Нажмите на это и [следуйте инструкциям ниже]

  1. нажмите Импорт автономного файла и выберите файл SQL
  2. Перейдите в «Мой документ» и создайте папку вызова "dump"[simple].
  3. теперь вы готовы загрузить файл. Нажмите кнопку ИМПОРТ вниз.
0 голосов
/ 10 апреля 2017

Если вы используете MySQL в Xampp, выполните следующие действия.

Найдите следующую информацию в панели управления XAMPP> Apach-Config> Файл PHP (php.ini)

  • post_max_size = 8M

  • upload_max_filesize = 2M

  • max_execution_time = 30
  • ut_time = 60 enter code here memory_limit = 8M

И измените их размеры в соответствии с вашими потребностями. Я использую эти значения

post_max_size = 30M
upload_max_filesize = 30M
max_execution_time = 4500
max_input_time = 4500
memory_limit = 850M
...