【问题标题】:Synchronize two databases with differing levels of normalization同步具有不同规范化级别的两个数据库
【发布时间】:2011-07-12 06:43:09
【问题描述】:

我有两张桌子。表 A 是全新的并且相对规范化。表 B 很旧,完全破坏了所有级别的规范化。

我正在使用表 A 创建一个全新的系统,但在新系统启动并运行之前,我们的全体员工仍在大量使用表 B,届时我们将评估我们是否'准备好拨动开关。

我们使用典型的 LAMP 堆栈 PHP/MySQL。我的问题是:如何自定义/进行从表 B 到表 A 的迁移?请记住,我不一定担心数据是否存在差异。我关心的是整体结构。

谢谢。

【问题讨论】:

  • 这个问题在 StackOverflow 上确实更好,但我认为你会得到的答案是“不要那样做!写你的新系统,用测试数据填充它并测试它,然后写一个脚本,可以一次同步所有内容并一举杀死旧系统"

标签: mysql migration data-migration database-migration


【解决方案1】:

也许您可以考虑使用 VIEW,以便可以以与表 A 相同的结构呈现表 B 中的数据。然后切换就很简单了:

CREATE TABLE new_table_a LIKE table_a;
INSERT INTO new_table_a SELECT * FROM table_a;
DROP VIEW table_a;
ALTER TABLE new_table_a RENAME table_a;

【讨论】:

    猜你喜欢
    • 2016-04-02
    • 2017-10-10
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多