Перенос данных базы данных sqlite в базу данных postgres на heroku
Я работал над проектом django локально и использовал SQLITE в качестве базы данных. Теперь я развернул проект на Heroku и использовал postgresql в качестве базы данных. Я выполнил миграцию и схемы базы данных перенеслись нормально, но данные из таблиц не перенеслись.
Как перенести данные sqlite в базу данных postgresql?
Вот мой код базы данных из settings.py
DATABASES = {
'default': {
"ENGINE": "django.db.backends.sqlite3",
"NAME": os.path.join(BASE_DIR, "db.sqlite3"),
}
}
import dj_database_url
db_from_env = dj_database_url.config(conn_max_age=600)
DATABASES['default'].update(db_from_env)
Вы должны использовать имя двигателя только в базе данных, в то время как в производстве.
В файле settings.py:
"ENGINE": "django.db.backends.postgresql_psycopg2"
Перенос данных из локального в производственный.
Передача данных
Установите дополнение Heroku PGBackups:
heroku addons:add pgbackups
Выгрузка локальной базы данных:
pg_dump -h localhost -Fc library > db.dump
Для того чтобы Heroku получил доступ к дампу базы данных, вам нужно загрузить его куда-нибудь в Интернет.
Импортируйте дамп в Heroku:
heroku pgbackups:restore DATABASE http://www.example.com/db.dump