将Django项目从MySQL迁移到PostgreSQL的最简单方法
我想将Django项目的数据库从MySQL转换为PostgreSQL。不幸的是,我不能只使用Django的“dumpdata”和“loaddata”管理命令,因为我的数据库表太大了。我已经读过这篇文章了,但是要在实践中使用这个方法,我仍然需要将它转换成一个管理命令,当它复制模型实例和重置序列时,可以在可用模型上进行迭代。此外,它看起来也不是很快,因为它在每个模型实例上都发出save() 有更好的迁移方式吗?实际上,我更喜欢做“mysqldump”,以某种方式将转储从MySQL转换为PostgreSQL格式,然后将其加载到PostgreSQL。您建议使用哪种软件来执行这种转储转换,并正确地将MySQL数据类型转换为PostgreSQL数据类型,例如tinyint(1)转换为boolean将Django项目从MySQL迁移到PostgreSQL的最简单方法,mysql,django,postgresql,migration,Mysql,Django,Postgresql,Migration,我想将Django项目的数据库从MySQL转换为PostgreSQL。不幸的是,我不能只使用Django的“dumpdata”和“loaddata”管理命令,因为我的数据库表太大了。我已经读过这篇文章了,但是要在实践中使用这个方法,我仍然需要将它转换成一个管理命令,当它复制模型实例和重置序列时,可以在可用模型上进行迭代。此外,它看起来也不是很快,因为它在每个模型实例上都发出save() 有更好的迁移方式吗?实际上,我更喜欢做“mysqldump”,以某种方式将转储从MySQL转换为Postgre
编辑感谢大家的帮助。我使用实用程序成功迁移了我的数据库。但是,在导入转储后,我仍然必须自己重置生成的PostgreSQL数据库中的序列。有几个转换器,例如,Ruby中的这一个:如果您的数据集很大,您需要进行任何转换,您可以使用开源解决方案(如和的kettle项目)来创建地图,它将负责其余的工作;但是,除非您还想进行任何转换(或者您的数据集非常非常大),否则这可能是过火了 EnterpriseDB(postgresql背后的公司)提供了一种产品,如果您想自己动手,它可以与a一起完成这项工作
python包是另一种选择。谢谢,我要试试这个。我已经听说了,但我不知道它也可以生成db转储。我发现用python重写Ruby脚本对我更有效:我已经删除了我的答案。下次我会读两遍这个问题。祝你移民好运!我有一些使用Talend Studio和Pentaho的经验,我决不会建议将它们用于此目的。KIS-使用小型、简单但高效的工具进行特定操作。用锤子钉耳环不是个好主意。。。