sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kan jeg nemt konvertere en Django-app fra mySQL til PostgreSQL?

Konvertering af MySQL-database til Postgres-database med Django

Sikkerhedskopier først dine data fra den gamle Mysql-database i json-fixtures:

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

Skift derefter dine indstillinger.DATABASES til postgres-indstillinger.

Opret tabellerne i Postgresql:

$ python manage.py migrate

Slet nu alt indhold, der automatisk laves i migreringen (django indholdstyper, brugergrupper osv.):

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

Og nu kan du trygt importere alt, og beholde din pk'er den samme!

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

Testet med Django==1.8



  1. Hvordan får man en liste kolonnenavne og datatyper af en tabel i PostgreSQL?

  2. Er der et versionskontrolsystem til databasestrukturændringer?

  3. VÆLG id, DER HAR maksimalt antal id

  4. Tilslutning af en Bastion Server til en PostgreSQL Server via SSH Tunnel