Migrar SQLite para PostgreSQL (no Django)
💡
Esse artigo não é um tutorial, são anotações pessoais.
1 - Certificar-se que não tem nenhuma migração pendente.
python manage.py makemigrations
python manage.py migrate
2 - Gerar um arquivo JSON que puxa os dados do atual bd (ex: dumpdata.json)
python manage.py dumpdata > dumpdata.json
Importante: mudar o encoding do arquivo para UTF-8.
4 - Instalar o psycopg2
pip install psycopg2
5 - Ir no settings.py do projeto e colocar os dados do bd:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'test',
'USER': 'postgres',
'PASSWORD': 'senha',
'HOST': 'localhost',
'PORT': '5432',
}
}
6 - Sincronizar o banco de dados
python manage.py migrate --run-syncdb
7 - Limpar os dados que vem no bd por padrão
python manage.py shell
from django.contrib.contenttypes.models import ContentType
ContentType.objects.all().delete()
exit()
8 - Carregar os dados do arquivo JSON no banco de dados.
python manage.py loaddata datadump.json
9 - Checar no bd se migrou tudo certo.
Â