PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Django :Quelles sont les bonnes pratiques pour migrer un projet de sqlite vers PostgreSQL

D'après mon expérience, le vidage et la restauration à partir de SQL ne fonctionnent pas correctement.

Vous devriez plutôt suivre cette séquence :

1. Vider le contenu de la base de données vers json

$ ./manage.py dumpdata > dump.json

2. Changez le backend dans settings.py

DATABASES = {
    # COMMENT OUT:
    # 'default': dj_database_url.config(default='sqlite:////full/path/to/your/database/file.sqlite'),
    # ADD THIS INSTEAD:
    'default': dj_database_url.config(default='postgres://localhost:5432/postgres_db_name'),
}

3. Syncdb et migrez la nouvelle base de données vers la même structure de table

$ ./manage.py syncdb
$ ./manage.py migrate

4. Chargez le json dans la nouvelle base de données.

$ ./manage.py loaddata dump.json

5. Bravo! Maintenant, les nouvelles données sont dans votre base de données postgres.