【发布时间】:2010-11-25 15:41:14
【问题描述】:
问题是:
我们接管了一个拥有活跃成员社区的网站。我们已经获得了应用程序和数据库转储,并且站点在新服务器上成功运行,并且 DNS 已切换。
问题是数据库在将文件发送给我们并切换 DNS 所花费的时间内不同步。现在 DNS 已经切换并且数据库不可能不同步,我们已经收到了 members2,它是来自原始服务器的包含额外数据的表。
两个表都是这样的
`idmembers` int(10) unsigned NOT NULL auto_increment,
`firstName` varchar(20) default NOT NULL,
`lastName` varchar(20) default NOT NULL,
`email` varchar(255) default NOT NULL,
`date` varchar(10) default '0',
`source` varchar(50) default 'signup'
PRIMARY KEY (`idmembers`),
UNIQUE KEY `email` (`email`)
所以第一个表称为 members1,它是实时数据库,它缺少来自 members2 的成员负载。我需要将它们合并在一起,保持成员 1 原样,并允许将来自成员 2 的唯一电子邮件插入成员 1。
我假设有一些 SQL 可以做到这一点,但我不知道它可能是什么。
我的第二个也是不太可取的方法是使用像 PhpMyAdmin 这样的工具在某个日期之后从 members2 导出所有记录并将它们重新导入到 members1 但问题是它们都从 members2 导出,并且 idmembers 与 members1 冲突(因为两者都使用了自动增量)
【问题讨论】: