@masterdrew

Как очистить и затем восстановить таблицу в базе данных mysql?

Каким образом в phpmyadmin можно выполнить следующую последовательность действий:
- сделать бекап конкретных таблиц
- очистить эти таблицы
- восстановить данные именно в этих таблицах с помощью бекапа, сохранив при этом все ключи

Попытка сделать экспорт таблиц в sql формате с последующим импортом выводит ошибку, что данные таблицы уже имеются в базе данных.
  • Вопрос задан
  • 772 просмотра
Решения вопроса 1
plin2s
@plin2s
IT, инженер
Ошибка появляется потому, что вы не удалили данные из бызы.
1) Экспорт
2) Обязательно убедиться, что в sql файле есть пункт на создание таблиц.
3) Удалить таблицы с данными
4) Импорт

В mysqldump есть ключ --add-drop-table, который добавит пункты по дропу таблиц, перед их созданием. Таким образом импорт гарантированно пройдет без ошибок. С phpmyadmin не работал, наверняка там есть что-то подобное
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sashkets
@sashkets
Прекратил отвечать после 24.02.2022
хм, может другой алгоритм подойдет?

1. скопировать таблицу1 в таблицу2
2. очистить таблицу1
3. скопировать дату из таблицы2 в таблицу1

а для бекапов ПМА не самый лучший вариант
Ответ написан
Комментировать
@zapimir
Таблицы не обязательно удалять. В Sypex Dumper можно делать бекап таблиц, после чего при восстановлении выбирать стратегию восстановления TRUNCATE + INSERT. В таком случае таблицы именно очищаются, и потом заливаются туда данные. При этом всё это намного быстрее, чем в phpmyadmin.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы