如何将数据从Postgres移动到在Amazon的RDS上运行的MySQL?

时间:2009-10-28 21:31:47

标签: sql mysql django postgresql amazon-rds

我需要将一个带有Django架构的数据库从Postgres移动到MySQL,在亚马逊的RDF上运行。我可以使用manage.py重新生成表,但我仍在寻找一种迁移所有行数据的方法。有谁知道一个干净的移动方式?亚马逊的RDF有什么值得注意的吗?

2 个答案:

答案 0 :(得分:5)

Django在manage.py中也有dumpdataloaddata命令。过程将是

  1. MySQL中的syncdb准备表
  2. 来自PostgreSQL的
  3. dumpdata
  4. 从前一个命令加载数据到新的MySQL实例

答案 1 :(得分:2)

如果您备份Postgresql数据库并选择“插入命令”选项,您将得到一个SQL插入语句的文本文件,理论上您可以针对不同的SQL数据库运行,在本例中为MySQL。在实践中,它将取决于您使用的数据库类型,因为并非所有Postgresql和MySQL数据类型都直接相互映射。

亚马逊RDS的问题在于,每周将有一个4小时的窗口,需要将数据库拆下来进行修补和维护。关系数据库的难点在于使它们具有复制和群集的容错能力。目前亚马逊的RDS没有解决这两个问题,看起来它只是使用EC2实例来托管一个MySQL服务器,这是很长一段时间没有RDS可以做的事情。

就个人而言,我喜欢RDS的发展方向,并期待有一天我可以将关系数据库视为一个黑盒子而不必担心容错和可扩展性,就像现在的Amazon SimpleDB产品一样。