在多数据库环境中,如何将所有数据从一个数据库移动到另一个数据库?
设置如下所示:
DATABASES = {
'default': {},
'users': {
'NAME': 'user_data',
'ENGINE': 'django.db.backends.sqlite3',
'USER': 'user',
'PASSWORD': 'superS3cret'
},
'customers': {
'NAME': 'customer_data',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'cust',
'PASSWORD': 'veryPriv@ate'
}
}
有没有简单的解决方案/应用程序可以做到这一点?虽然单向迁移就足够了,但由于有几十个模型和对象具有复杂的外键和多对多连接,迭代模型和对象并将它们保存到另一个并不能解决我的问题。
loaddata
也失败了,因为对象创建使用信号来创建其他对象,这会弄乱唯一键。
使用 sql 转储甚至不是微不足道的,因为后端是不同的。我已经尝试过了,我无法从我的 sqlite3 数据库中进行 psql 转储,这不会弄乱外键。
所以我需要一个解决方案,它将数据从数据库加载到另一个数据库,但不发送信号,并且也可以使用外键。但我找不到任何可以做到这一点的东西。