In my experience, dumping & restoring from SQL doesn’t work properly.
You should follow this sequence instead:
1. Dump db contents to json
$ ./manage.py dumpdata > dump.json
2. Switch the backend in 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 and migrate the new DB to the same table structure
$ ./manage.py syncdb
$ ./manage.py migrate
4. Load the json to the new db.
$ ./manage.py loaddata dump.json
5. Congrats! Now the new data is in your postgres db.