Объединение двух баз данных MySql, за исключением дублирующих ПК
У меня две базы данных с той же схемой. Например, database1 и database2; Теперь мне нужно их объединить. Я пытался ответить на этот ответ: могу ли я объединить две базы данных в одну в Mysql, если они оба имеют одну и ту же схему? Но у меня есть такое исключение: ERROR 1062 (23000) at line 24: Duplicate entry '1' for key 'PRIMARY'
Итак, вопрос прост: есть ли способ объединить две базы данных, игнорируя дублирование ПК второй БД? Или вариант с переопределением записей конфликтов второй БД? Оба варианта приемлемы.
Дополнительный комментарий: Говоря о базах данных, я имею в виду именно базы данных; У меня два дублирующих файла DB, и мне нужно развернуть оба из одного, объединенного БД с данными из первого и второго. Если некоторые данные будут потеряны - это не проблема. Но мне нужно объединить максимальные данные с обеих БД. не таблицы
Используйте параметр --insert-ignore
для mysqldump
. Это заставит его записывать команды INSERT IGNORE
в файл дампа вместо обычных INSERT
. Это приводит к тому, что дублирующие ключи пропускаются при вставке, вместо того, чтобы вызывать ошибку.