Как извлечь одну таблицу из дампа mysqldump
Полный mysqldump базы может весить десятки гигабайт, а нужна из него часто одна таблица: восстановить её, проверить данные или отправить коллеге. BigText открывает дамп сразу, не загружая его в память, за один проход составляет список таблиц и записывает нужную в отдельный файл со всем, что нужно для восстановления.
По шагам
Откройте дамп
Откройте .sql через «Файл → Открыть» или перетащите в окно. Дамп в .sql.gz тоже открывается напрямую.
Получите список таблиц
«Файл → Таблицы дампа SQL…» читает дамп один раз, примерно гигабайт в секунду, и выводит его таблицы с числом строк и размером — в порядке дампа или по убыванию размера. Чтобы найти таблицу среди сотен, введите часть имени в фильтр.
Проверьте таблицу
Щёлкните таблицу, чтобы перейти к её CREATE TABLE и увидеть столбцы.
Сохраните её в файл
Щёлкните таблицу правой кнопкой и выберите «Сохранить эту таблицу как…». В файл попадут DROP и CREATE таблицы, её строки, ключи, индексы и триггеры, а также начальные и конечные настройки дампа, поэтому он восстанавливается сам по себе:
mysql shop < orders.sql.
Полезно знать
- Несколько таблиц: отметьте их в списке и нажмите «Сохранить отмеченные таблицы в один файл…». «Открыть эту таблицу в новой вкладке» показывает таблицу, не сохраняя её.
- «Разбить на файл для каждой таблицы…» записывает файл на каждую таблицу, один файл для того, что идёт до таблиц, и один для представлений, процедур и внешних ключей после них. В порядке имён они восстанавливают весь дамп:
for f in shop.*.sql; do mysql shop < "$f"; done. - Так же работают дампы pg_dump в текстовом формате и файлы
.dumpиз SQLite. В скриптах:bigtext-cli sqldump shop.sql extract orders -o orders.sql.