将数据移动到其他数据库的最简单方法

时间:2013-02-01 20:49:28

标签: php python sql database migration

我的博客有两个版本:第一个用PHP编写并使用MySQL,但第二个是新版本,用Python编写并使用Postgres。

我的目标是将数据从一个移动到另一个。表名称和架构更改。

我的想法是为旧网站制作ORM模型,并使用循环,使用ORM获取数据并将其放入新数据库中,因为我的新网站也有ORM模型。

看起来像是:

old_articles = OldArticle.objects.all()
for old_article in old_articles:
    new_article = NewArticle()
    new_article.title = old_article.name
    new_article.content = old_article.body
    new_article.save()

ORM很容易在数据库之间产生抽象差异,在我看来,这实际上可行!或者不,有更好的方法吗?

2 个答案:

答案 0 :(得分:1)

有很多库可以做这种事情。我会坚持已经实施并经过充分测试的东西。这是一个指向postgres wiki的链接,其中包含一系列可以完成此任务的工具。

http://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL

答案 1 :(得分:1)

如果这次迁移只进行一次,我就不会采用ORM方式了。可以从MySQL导出符合标准的SQL转储,并且可以轻松地将转储导入PostgreSQL。一旦数据在PostgreSQL中,运行迁移查询以更改方案或使用临时“导入”表并将数据复制到新方案/布局中的表中。

测试所有迁移查询并编写包含要执行的所有步骤,要运行的查询以及按什么顺序运行的方案。还包括需要执行的手动步骤。

一旦您确定迁移方案是正确的并经过全面测试,请将旧博客置于“维护模式”(抱歉,我们已离线,我们很快就会回来)并真实地执行此操作!< / p>

最重要的是:测试你的场景,验证结果,花点时间,你永远不要急于做这些事情!