合并两个具有相同结构的数据库[MYSQL]

时间:2013-04-02 22:41:31

标签: mysql phpmyadmin

我刚刚将我的网站黑了,他们能够对我当前的数据库造成一些损害。

无论如何,我几天前有一个备份。问题是当前数据库有几千个帖子和线程/用户。

我只是想知道如何合并这两个数据库?

这两个数据库具有确切的结构,我希望备份覆盖当前数据库中的任何记录,只是我希望当前数据库填充任何新记录,如帖子,线程,用户等。

我知道你可以合并两个表,如果它们具有确切的结构,但是两个具有相同结构的数据库呢?

3 个答案:

答案 0 :(得分:3)

我假设您有架构s1和架构s2

要将s1中表格的所有行插入s2中的表格,同时覆盖现有行,您可以使用:

REPLACE INTO s2.table_name
SELECT * FROM s1.table_name;

如果您不想触及现有线路:

INSERT INTO s2.table_name
SELECT * FROM s1.table_name
ON DUPLICATE KEY IGNORE;

答案 1 :(得分:0)

有一些方法可以做到: 1.)使用命令行工具,如https://microsoft-apiapped89163604714d21b7e4a3424ed82d50.azurewebsites.net/schema Sync


2.)或使用SQLyog

在这里了解更多 mysql diff

答案 2 :(得分:0)

以我的经验,“重复键忽略”无效。相反,我发现了

插入IGNORE ta2_table SELECT * FROM ta1_table;

像魅力一样工作