Перемещение данных из одной базы данных MYSQL в другую
У меня есть три реляционные таблицы с данными в MYSQL db1 и те же схемы с данными в MYSQL db2, мне нужно объединить данные в MYSQL db2. какой правильный способ сделать это?
я должен дамп таблицы db1 индивидуально (с возможностью добавления большого числа к идентификаторам, чтобы данные не конфликтовали)?
1 ответ
Вы можете просто добавить данные, выполнив что-то вроде этого:
INSERT INTO `db2`.`table` SELECT NULL, `col2`, `col3` FROM `db1`.`table`
Это предполагает, что схема такова, что первый столбец является идентификатором автоматического увеличения. При выборе NULL для этого будут сгенерированы новые ключи, все остальные столбцы должны быть выбраны отдельно и будут формировать остальные из этих новых записей.
Если вы упорядочиваете выбор из вышеприведенного оператора по идентификатору, и они являются смежными, вы можете просто добавить первое вставленное значение идентификатора во внешние ключи для других таблиц.