Импорт / восстановление данных MySQL - PullRequest
0 голосов
/ 16 октября 2018

Я использую локальный экземпляр 32-разрядного MySQL Server 5.7.22 с Workbench 6.3.8 (нужно было выбирать 32-разрядные версии - значит, более старые) в Windows 7 (x86).

Я импортирую файл dumpfile.sql.

 1. Import from self-contained (dump) file (.SQL)
 2. Click Start Import
 3. As the import is being performed the progress bar
 never increments or shows any progress. 
It's been running for many hours and only says "starting".

Когда я остановил импорт и обновил свои схемы, я увидел базу данных, которую пытаюсь импортировать, но с неполными таблицами и данными, что разочаровывает /сбивает с толку.

Чего мне не хватает в этом процессе?

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Во-первых, индикатор выполнения не работает ни в одной версии рабочей среды, он всегда «перепрыгивает» с 0% до 100% по завершении.Так что не стоит беспокоиться.

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

Если вы можете получить доступ к файловой системе на машине, вы можете проверить медленный журнал запросов , который по умолчанию находится в c:\ProgramData\MySQL\MySQL Server 5.7\Data\{host_name}-slow.log в Windows.В дампе может быть что-то, что делает его настолько медленным, и журнал должен показать это.

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

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

0 голосов
/ 16 октября 2018

Есть лучший способ сделать это.Используйте mysqldump для получения дампа и команду mysql для восстановления.Это работает так просто:

Взятие дампа

mysqldump -uroot -prootpw -h127.0.0.1 | gzip > alldatabases.sql.gz

Восстановление дампа

gunzip -c alldatabases.sql.gz | mysql -uroot -prootpw -h127.0.0.1

Пожалуйстаобратитесь к следующей ошибке - https://bugs.mysql.com/bug.php?id=54370. Люди сталкивались с этой проблемой раньше.Если у вас есть доступ к командной строке, то делать это имеет больше смысла, так как это даст вам большую гибкость.

...