我有一个拥有数十万个数据的现有系统。我需要将其迁移到另一个数据库,但结构不同。我如何创建将数据库迁移到其他结构的脚本。

我尝试了csv,但是我需要对外键进行一些列设置,因为新数据库已被标准化



mysql - 如何创建可以将数据库迁移到另一个规范化数据库的脚本-LMLPHP

最佳答案

这是纯MySQL中的解决方案。考虑到您评论了以下内容:“新数据库中的类别已设置”。您可以这样执行insert-select

INSERT INTO database2.products (id, category_id, name)
SELECT p.id,
       (SELECT c.id FROM database2.categories AS c WHERE p.category = c.category),
       p.name
FROM database1.products as p


特殊技巧是在子查询中比较类别字段。

警告:未经测试的查询。首先进行备份!

关于mysql - 如何创建可以将数据库迁移到另一个规范化数据库的脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55862512/

10-11 04:51
查看更多