Exportar sql do banco de dados i-Educar?

Boa tarde a todos, sou iniciante no sistema i-Educar e estou tendo um pouco de dificuldade para exportar meu banco de dados como sql do mesmo.
Instalei o i-Educar somente por linha de comando no ubuntu 18 via docker, funcionou tranquilamente e tudo certo, só que agora preciso exportar o banco em .sql. Andei pesquisando e vi algumas pessoas falando que usaram o pgAdmin 3 para esse feito.
Mas ai que aconteceu meu problema, não consigo conectar no banco do ieducar, apenas no padrão que vem do postgres.

Utilizei as seguintes parâmetros:
host: localhost
port: 5432
maintenance DB: postgres
username: ieducar
password: ieducar

No entanto como havia dito veio apenas o padrão do postgres.

Peguei o parâmetro da port e host no arquivo ieducar.ini e o username e password criei no terminal via postgres.

Alguém poderia me informar se estou colocando os parâmetros corretos ou teria alguma sugestão de outro método para eu conseguir realizar essa exportação em sql?

O melhor caminho é tentar resolver esse acesso, eventualmente aparece esse contratempo mas dá para resolver. Outra solução é utilizar ‘pg_dump’ pelo shell. Você pode copiar o comando utilizado para criar o backup do banco ‘postgres’ e alterar para o banco ‘ieducar’.

Oi @Paulo

Isso acontece pela forma como o docker funciona. Quando você levanta um serviço pelo docker ele roda de forma “isolada” do host, sendo assim, por mais que internamente os serviços do docker usem portas padrão do Postgres, por exemplo, quando você tenta acessar estes mesmos serviços a partir do host, as portas são diferentes ou, dependendo do serviço, nem são abertas.

No caso do i-Educar e do container do Postgres existe uma porta aberta e se você usar este comando:

docker-compose port postgres 5432

Ele vai te responder algo como:

0.0.0.0:32775

Neste caso, se você quer se conectar ao banco do docker a partir do seu host precisa usar a porta 32775.

Sempre que você levantar os serviços a porta poderá ser diferente então é necessário rodar o comando acima pra descobrir qual foi a porta usada. Se você quiser fixar a porta no host você pode criar um arquivo docker-compose.override.yml na raiz da sua instalação com o seguinte conteúdo:

version: '3'
services:
  postgres:
    ports:
      - 5438:5432

Neste caso, a porta no host sempre será 5438.

Espero que ajude!

2 Curtidas