@dieneri

Как импортировать только отсутствующие строки из бекапа таблиц?

Удалили папку в CMS на сайте.
Соответственно удаляются не только изображения на сервере, но и записи в sql.
Есть бекап, решил восстановить изображения. Папку восстановил. Осталось восстановить записи в sql.
Есть экспорт таблицы из бекапа.
Как её залить, поверх текущей в sql? Мне нужно сохранить новые данные, которые были после бекапа. И восстановить отсутствующие до бекапа, которые пропали после удаления. В общем, склеить данные. Как это сделать на уровне mysql, возможно уже есть простые инструменты и ничего придумывать не надо... Подскажите, спасибо.
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Так просто этого не сделать, особенно, если есть связи по первичному ключу с auto_increment.
Для начала, надо остановить работу с базой. Потом всем таким связям настроить foreign index с включением on update cascade. Затем нужно перенести записи, созданные после разделения баз, на значения первичного ключа, бо́льшие, чем максимальное в бэкапе. После этого можно сделать импорт бэкапа, заменив insert на insert ignore. Не забыть поправить генерацию auto_increment, выполнив соответствующие alter table.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы