Как скопировать используемую базу данных в другую базу данных в django?
Я разработал простое приложение django с использованием sqlite3. Сначала я хотел сохранить его простым с помощью sqlite3, но все начинает масштабироваться (Да, я действительно начал использовать это приложение с sqlite3! Позор мне...) поэтому я хочу перенести все свои данные в базу данных postgresql.
предоставляет ли django или другая третья сторона такую функцию, или я должен страдать за свою собственную глупость...
2 ответов
Я пытаюсь сделать то же самое прямо сейчас, но я сталкиваюсь с проблемой разрешения зависимостей в основном так же, как билет 16317. Но хватит обо мне...
Устранение неполадок это привело меня к поиску ссылки для Джанго-контрабандист что позволяет создавать дампы и загружать данные из интерфейса администратора.
Это выглядит многообещающим для любой передачи данных, необходимых или использовать в качестве резервной утилиты.
во-первых, выполнить
manage.py dumpdata > out.json
затем измените конфигурацию БД, перенесите (или syncdb) и, наконец,
echo "delete from auth_permission; delete from django_content_type;" | python manage.py dbshell
(если у вас есть Django старше 1.11, вам нужно использовать
echo "delete from django_content_type;" | manage.py dbshell
)
затем загрузите файл JSON:
manage.py loaddata out.json
(по состоянию на заменяется django_content_type
)