DEV Community 👩‍💻👨‍💻

Cover image for Conectando o PostgreSQL com Django no Ubuntu
Renato Lelis
Renato Lelis

Posted on

Conectando o PostgreSQL com Django no Ubuntu

Fazer a conexão entre o django e o Postgres não é uma tarefa difícil mas se tratando de Linux, você vai precisar digitar algumas linhas de comando para fazer a instalação desse SGBD.
Instalando o PostgreSQL

Para começar, você precisa adicionar o repositório apt do Postgres ao seu sistema. Comece importando a chave GPG para os pacotes do Postgres com os seguintes comandos:

sudo apt-get install wget ca-certificateswget — quiet -0 — https://postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Enter fullscreen mode Exit fullscreen mode

Agora adicione o repositorio no seu sistema

sudo sh -c ‘echo “deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs` -pgdg main” >> /etc/apt/sources.list.d/pgdg.list’
Enter fullscreen mode Exit fullscreen mode

Sim eu sei, são comandos muito grandes, então não tenha vergonha e copie e cole no seu terminal ;).

Agora para finalmente instalar o Postgres, digite (ou copie) os seguintes comandos:

sudo apt-get updatesudo apt-get install postgresql postgresql-contrib
Enter fullscreen mode Exit fullscreen mode

E pronto, depois disso o Postgres já deve estar instalado na sua maquina.

Criando o banco de dados

Para criar um banco de dados dentro do Postgres, primeiro conecte-se ao Postgres:

sudo su — postgrespsql
Enter fullscreen mode Exit fullscreen mode

Crie um usuário e senha para seu banco:

CREATE USER 'root' WITH PASSWORD 'root';
Enter fullscreen mode Exit fullscreen mode

Substitua o nome e senha root para qual você desejar.

Não se esqueça de colocar o ponto-e-vírgula no final de todo comando que digitar.

Agora crie o banco em si:

CREATE DATABASE django_postegres WITH OWNER root;
Enter fullscreen mode Exit fullscreen mode

Esse comando vai criar o banco de dados e vai dar permissões para o usuário que você criou no passo anterior.

Digite \q e em seguida exit para sair do postgres

Conectando com o Django

Com o Postgres instalado e com as informações de usuário, senha e banco de dados, basta instalar o pacote do postgres via pip.

pip install psycopg2-binary
Enter fullscreen mode Exit fullscreen mode

Agora vá no settings.py do seu projeto django para editar o dicionário DATABASES. Antes assim:

DATABASES = {   
    'default': {        
    'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
Enter fullscreen mode Exit fullscreen mode

Agora assim:

DATABASES = {
    'default': {
       'ENGINE': 'django.db.backends.postgresql_psycopg2',
       'NAME': 'django_postgres',
       'USER': 'root',
       'PASSWORD': 'root',
       'HOST': 'localhost',
       'PORT': 5432
      }
   }
Enter fullscreen mode Exit fullscreen mode

A ENGINE indica qual driver vai ser usado para conectar com o banco de dados. No nosso caso vai ser o que veio com o psycopg2. O NAME vai ser o nome do banco de dados que foi criado. O USER vai ser o nome do usuário com permissões sobre nosso banco. O PASSWORD é a senha do usuário. O HOST é onde o banco está hospedado, no nosso caso está local, então será o localhost. E o PORT será a padrão do Postgres, a 5432.
Migrações

Depois disso tudo basta criar e aplicar suas migrações:

python manage.py makemigrations
Enter fullscreen mode Exit fullscreen mode
python manage.py migrate
Enter fullscreen mode Exit fullscreen mode

Conclusão

Deu para ver que esse processo não é dificil, só um pouco trabalhoso por causa dos comandos longos do linux mas nada que não se possa pegar prática.

Referências:

https://tecadmin.net/install-postgresql-server-on-ubuntu/

https://medium.com/@lucas_souto/integrando-django-com-postgresql-58b3520ddf6e

Top comments (0)

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.