Acessando Banco de Dados

I am trying to access my database via a GUI (Psequel).

I forwarded the port setting from my container as such:

app.yml:

expose:
  <standard definitions>
  - "15432:5432" # PostgreSQL

Also changed my password as such:

./launcher enter app
su - postgres
psql
ALTER ROLE postgres WITH PASSWORD '<your password>';

And I am unable to access the database. Any suggestions?
1 curtida

If you only need a static snap shot of the database then from https://<site>/admin/backups download a backup. It should be a *.tar.gz file and when uncompressed will be a *.sql file. Create a PostgreSQL database on another machine, which could even be your laptop, and then import the *.sql file.

Now you should be able to access the data all you want with any means that can connect to a PostgreSQL database.

I use the above but access the Discourse database in PostgreSQL via ODBC.

HTH

2 curtidas

ok good idea.
Actually I figured it out. It runs on port 5432 also in the container.
it should read:
expose:

  • “5432:5432” # PostgreSQL

thanks

6 curtidas

Olá a todos,

Consigo acessar meu banco de dados postgres via pgadmin usando os seguintes passos:

  • Remova o código de porta de exposição do seu app.yml e reconstrua o aplicativo.
  • Vá para o seu portal de gerenciamento de servidor (ou seja, Digital Ocean, AWS etc.). Crie uma regra de firewall que abra a porta 5432.
  • Usando a aba SSH do pgadmin: faça login no seu servidor usando o endereço e as credenciais do servidor.

Me avisem se isso funcionar para vocês.

Atenciosamente,
Kimberly

@EricGT nunca tinha pensado nisso! Obrigado!! :slight_smile:

1 curtida

Olá!

Gostaria de confirmar com você, por favor. Quando exporto o dump.sql para um banco de dados postgresql, as tabelas ficam vazias. Não está claro o porquê. Aqui estão os passos que sigo após baixar o arquivo de backup:

  1. Abrir o pgAdmin
  2. Criar um Novo Banco de Dados
  3. Abrir a Ferramenta de Consulta (Query Tool)
  4. Usar ‘Abrir’ na Ferramenta de Consulta e selecionar o arquivo dump.sql
  5. Executar o Script de Dump

Ele diz que tudo foi bem-sucedido, mas quando ‘visualizo os dados’ nas tabelas, elas estão vazias.

Além disso, provavelmente é como a instância é gerenciada, mas parece que a tabela de usuários não está incluída também, mas preciso dessa tabela para saber quem fez o quê.

Perdi alguma coisa aqui? Obrigado!

Qual o tamanho do dump.sql? Ele deve ser considerável (alguns MB no mínimo). Você pode dar uma olhada dentro do arquivo? Ex:\n\nsh\n$ zgrep -i \"CREATE TABLE public.users\" dump.sql.gz\n# o resultado deve ser\n\u003e CREATE TABLE public.users (\n\n\nSe você não vir isso, o dump parece errado.\n\nAlém disso, se você compartilhar seus passos sobre como está exportando o dump ou colar sua saída de console aqui, poderemos entender melhor seu problema.

1 curtida

Muito obrigado! :slight_smile:

6,34 GB!

A imagem mostra uma linha de código SQL em um terminal, tentando usar um arquivo chamado "dump.sql" para expressar uma instrução CREATE TABLE. (Legenda da IA)

Para baixar o dump, segui os passos sugeridos acima por @EricGT:

Depois disso, segui estes passos:

E então, quando quero ver os dados, ele mostra:

Acabei de refazer isso para verificar.

  1. Usando a página de administração https:///admin/backup solicitei um download e segui os passos, houve várias etapas que incluíram verificação por e-mail e download de um arquivo.
  2. O arquivo baixado foi um arquivo gz, por exemplo, abc-2025-01-23-095947-v20250122131007.sql.gz. No Windows, descompactei o arquivo usando 7-zip, o que criou um diretório com o mesmo nome, menos o .gz no final.
C:\Users\Groot\Downloads>dir *.sql.gz
23/01/2025  05:04 AM       407,213,170 abc-2025-01-23-095947-v20250122131007.sql.gz

C:\Users\Groot\Downloads>dir *.sql

23/01/2025  05:04 AM    <DIR>          abc-2025-01-23-095947-v20250122131007.sql
  1. Usando um prompt de comando do Windows aberto no diretório com o arquivo sql para verificar se o arquivo sql existe
C:\Users\Groot\Downloads\abc-2025-01-23-095947-v20250122131007.sql>dir

23/01/2025  05:04 AM     1,572,346,154 abc-2025-01-23-095947-v20250122131007.sql
               1 Arquivo(s)  1,572,346,154 bytes
  1. Usando o mesmo prompt de comando do Windows, digitei o comando para listar o início do arquivo sql.

type /a | more

C:\Users\Groot\Downloads\abc-2025-01-23-095947-v20250122131007.sql>type "abc-2025-01-23-095947-v20250122131007.sql" /a | more

abc-2025-01-23-095947-v20250122131007.sql


--
-- PostgreSQL database dump
--

-- Dumped from database version 15.8 (Debian 15.8-1.pgdg110+1)
-- Dumped by pg_dump version 15.10 (Debian 15.10-1.pgdg120+1)

-- Started on 2025-01-23 09:59:47 UTC

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';

Espero que isso o leve ao ponto em que você possa usar o arquivo SQL com o PGAdmin para importar os dados.


NB

Quando postei sobre isso há cerca de 5 anos, o tipo de arquivo baixado era tar.gz, agora é sql.gz. A única diferença é que agora é necessária uma etapa a menos de descompressão.

2 curtidas

Olá @EricGT

Muito obrigado pela sua ajuda! Segui todos os mesmos passos (com um extra, já que meu arquivo ainda tem tar.gz). Cheguei ao mesmo resultado com o arquivo sql:

--
-- PostgreSQL database dump
--
.........
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';

No entanto, o problema é que quando uso o PgAdmin para obter os dados, todas as tabelas estão vazias e a tabela Users simplesmente não existe.

Desculpe, não posso ajudar com o PgAdmin. Eu não uso PgAdmin e teria que instalá-lo para tentar. Instalar o PgAdmin não é um passo que eu queira dar.

A única vez que acessei um banco de dados Discourse exportado foi para instalar o PostgreSQL, odbc-postgresql e usar o iusql como observado aqui.

1 curtida

Muito obrigado por toda a ajuda! Eu realmente aprecio. Acontece que eu estava tentando usar a versão mais recente do postgresql, enquanto o dump.sql era de uma versão anterior. Descobri isso enquanto tentava seguir o guia que você usou. Obrigado!

1 curtida