mysql - 如何轻松地将 Django 应用程序从 mySQL 转换为 PostgreSQL?

标签 mysql django postgresql

有人做过吗?这是一个简单的过程吗?我们正在考虑切换到事务,因为 mysql 最近似乎“崩溃”了。

最佳答案

使用 Django 将 MySQL 数据库转换为 Postgres 数据库

首先在json fixtures中备份旧Mysql数据库的数据:

$ python manage.py dumpdata contenttypes --indent=4 --natural-foreign > contenttype.json
$ python manage.py dumpdata --exclude contenttypes --indent=4 --natural-foreign > everything_else.json

然后将您的 settings.DATABASES 切换为 postgres 设置。

在 Postgresql 中创建表:

$ python manage.py migrate

现在删除迁移中自动生成的所有内容(django 内容类型、用户组等):

$ python manage.py sqlflush | ./manage.py dbshell

现在您可以安全地导入所有内容,并保持您的 pk 不变!

$ python manage.py loaddata contenttype.json
$ python manage.py loaddata everything_else.json

使用 Django==1.8 测试

关于mysql - 如何轻松地将 Django 应用程序从 mySQL 转换为 PostgreSQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4964615/

相关文章:

python - docker的多个django要求

python - DRF : how to change the value of the model fields before saving to the database

ruby-on-rails - 将 has_many 成员分组为 postgres db 中的 member_ids 数组

mysql - Postgresql 合并来自 JOIN 的相同列

Postgresql 9.5 安装 - 配置所有者(postgres :105) and data owner (ubuntu:1000) do not match, 和配置所有者不是 root

python - 将数据从 MySQL 插入到 Postgresql

php - 同一页上的两个 mysql 查询搜索?

php - 微时间的十进制长度(真)?

mysql - 无法在 MySQL 中使用 ALTER TABLE 添加外键

Django "MigrationSchemaMissing: Unable to create the django_migrations table (no schema has been selected to create in)"