Подтвердить что ты не робот

PhpMyAdmin: невозможно импортировать огромный файл базы данных, какие-либо предложения?

Недавно у меня появился новый компьютер, поэтому я решил переместить все свои веб-проекты. Перемещение файлов было легко, однако перемещение базы данных было немного сложнее. Я экспортировал ВСЕ базы данных, используя phpMyAdmin, и сохранил их на localhost.sql. Затем я попытался импортировать его на свой новый компьютер, также используя phpMyAdmin, и получим ошибку:

No data to import. Either no filename was sent or the filesize exceeded the maximum allowed size. See FAQ 1.16. (This was translated from Swedish)

Я рассмотрел FAQ, как это было рекомендовано. И они упомянули инструмент BigDump. Поэтому я загрузил его, и, посмотрев настройки, которые вам нужно запустить, я понял, что НЕ МОГУ ИСПОЛЬЗОВАТЬ ЭТО. Зачем? Потому что для этого требуется подключение к одной конкретной базе данных. Я пытаюсь импортировать МНОГИЕ базы данных сразу. Итак, успеха нет.

Я также попытался настроить PHP upload_max_filesize (и другой, упомянутый в FAQ) на что-то вроде 999. По какой-то причине это не работает. Я перезапустил все службы, прежде чем снова запустил его.

Я должен упомянуть, что я использовал XAMPP на своем старом компьютере, и я переключился на WAMP на свой новый. Это не имеет значения, верно? Поскольку оба "пакета" используют phpMyAdmin и apache.

Любые предложения о том, как обойти этот кошмар?

4b9b3361

Ответ 1

HowTo

Убедитесь, что вы оба * "post_max_size" * и * "upload_max_filesize" * в своем "php.ini" (который находится там, где находится ваш php.exe).

В следующем примере вы можете загружать и импортировать 128 МБ sql файлы:

post_max_size=128M
upload_max_filesize=128M

Перезапустите Apache, и вы все настроены.

Альтернативы

Альтернативный способ решения этой проблемы - использовать командную строку. Но это обходной путь, и как уродливые, как обходные пути:

C:\xampp\mysql\mysql.exe -u root -p db_name < C:\some_path\your_sql_file.sql

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

Ответ 2

Другие всегда пытаются перенастроить файл php.ini, но для меня я считаю, что лучше всего использовать консоль MYSQL, потому что это действительно экономит ваше время.

Ниже приведены пошаговые инструкции к консоли MYSQL:

Откройте консоль MSQL и запустите ее.

Тип:

mysql > используйте имя_базы базы данных

mysql > source location_of_your_file;

location_of_your_file должен выглядеть так: C:\mydb.sql

так команда mysql > source C:\mydb.sql;

Этот вид импорта sql-дампа очень полезен для BIG SQL FILE.

Я скопировал свой файл mydb.sq в каталог C:. Он должен быть капиталом C: для запуска, потому что он даст вам ошибку mysql или синтаксическую ошибку

Ответ 3

в сервере Wamp:

  • Откройте файл config.inc.php в пути "C:\wamp\apps\phpmyadmin" и установите/добавьте эту строку. $cfg ['UploadDir'] = 'upload;
  • Перезапустить все службы
  • Теперь создайте папку для загрузки внутри папки phpmyadmin (C:\wamp\apps\phpmyadmin4.0.4\upload) и поместите файл .sql в папку для загрузки.
  • Теперь откройте phpmyadmin в браузере, перейдите к импорту. Вы можете увидеть файл в раскрывающемся списке чуть ниже кнопки обзора с этой папкой каталога каталогов и файлами.
  • Выберите его и нажмите...

Ответ 4

Внесите изменения в xampp\php\php.ini

Поиск:

post_max_size       = 8M
upload_max_filesize = 2M
max_execution_time  = 30
max_input_time      = 60
memory_limit        = 8M

Изменить на:

post_max_size       = 750M
upload_max_filesize = 750M
max_execution_time  = 5000
max_input_time      = 5000
memory_limit        = 1000M

Ответ 5

Вы можете импортировать из командной строки - что-то вроде mysql < databasedump.sql (в зависимости от ОС).

Ответ 7

Следуйте этому шагу, чтобы сбросить огромную базу данных:

1) Загрузите php script BigDump.php из http://www.ozerov.de/bigdump/

2) Переместите файл bigdump.php и databasedump.sql в папку проектов (htdocs или www).

3) откройте файл bigdump.php и отредактируйте следующий раздел:

$db_server   = 'localhost';
$db_name     = '';
$db_username = '';
$db_password = ''; 

$filename           = '.sql';  

4) откройте bigdump.php в браузере и нажмите ссылку импорта.

Ответ 8

Это импортирует ваш большой файл sql за несколько секунд:

e:\xampp\mysql\bin>mysql -u root -h localhost < verybigsqlfile.sql

Не используйте phpmyadmin для импорта больших файлов sql. Если вы используете mysql онлайн, то получите доступ к консоли mysql.

Ответ 9

сжать файл sql (только gzip, bzip2, zip) и импортировать его. сжатие тестовых файлов, таких как файл db csv, резко сократит размер файла (от ~ 11 мб до 2 мб) и файл импорта импорта phpmyadmin.

Ответ 10

Измените файл my.ini

в разделе [mysqld] добавьте следующие строки

wait_timeout=28800
interactive_timeout = 28800
max_allowed_packet=32M

Перезагрузите mysql

откройте файл dump.sql добавьте следующие строки

use mydbname

Перейдите в папку mysql и запустите эту команду

mysql -u root -h localhost < dump.sql

Ответ 11

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

Ответ 12

Если вы загружаете очень большую базу данных, хотя веб-интерфейс будет ограничен максимальным размером HTTP-запроса HTTP

Отредактируйте PHP.ini, чтобы увеличить лимит загрузки

найдите эту строку

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
upload_max_filesize = ??M **<--- change here ....**

Затем перезапустите сервер

/sbin/service httpd restart

или используйте directadmin для перезапуска службы http

Ответ 13

Используйте SQLYog для операций с db, это лучший выбор для профессионала. С помощью SQLYog вы можете импортировать nGB {n- > final_size} из sql db.

Ответ 14

Я попытался изменить разрешенный размер, но это не устранило проблему.

Однако в моем конкретном случае есть папка с именем uploaddir, расположенная в папке

EasyPHP\модули\PHPMyAdmin\UploadDir

Я поставил там файл SQL, а затем вернулся на вкладку "Импорт" в PHP My Admin. Там была опция, позволяющая загружать файлы, которые уже были расположены в папке "uploaddir"; и у них нет предела.

Я использую Windows и EasyPHP 12.1

Ответ 15

Простое решение - просто загрузить и установить программное обеспечение MySql Workbench, основанное на gui и удобное в использовании. Недавно я импортировал базу данных mysql размером 300 МБ.

Ответ 16

Я знаю, что это старый, но.. Я давно столкнулся с этой проблемой. Либо я использовал консоль для выполнения sql файла дампа. Или я использую adminer в качестве альтернативы PHPmyAdmin.

Ответ 17

Если вы используете Linux, вы можете перейти на терминал и после подключения к mysql и выбрать базу данных, просто введите:

\. /path/to/database/database.sql