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?
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.
I wanted to double check with you please. When I export the dump.sql to a postgresql database, I end up with empty tables. Itâs not clear why. Here are the steps that I follow after I download the backup file:
Open pgAdmin
Create a New Database
Open Query Tool
Use the âOpenâ in the Query Tool and select the dump.sql file
Execute the Dump Script
It says that everything was successful but when I âview dataâ in the tables, they are empty.
Additionally, itâs probably how the instance is managed but it seems that the users table is not included as well, but I need that table to know who did what.
Using the admin page https://<site>/admin/backup requested a download and followed the steps, there were several steps which included verification through an email and downloading a file.
The file downloaded was a gz file e.g. abc-2025-01-23-095947-v20250122131007.sql.gz. On Windows uncompressed the file using 7-zip which created a directory with the same name less the .gz on the end.
C:\Users\Groot\Downloads>dir *.sql.gz
01/23/2025 05:04 AM 407,213,170 abc-2025-01-23-095947-v20250122131007.sql.gz
C:\Users\Groot\Downloads>dir *.sql
01/23/2025 05:04 AM <DIR> abc-2025-01-23-095947-v20250122131007.sql
Using a Windows command prompt opened to the directory with the sql file to verify the sql file exist
C:\Users\Groot\Downloads\abc-2025-01-23-095947-v20250122131007.sql>dir
01/23/2025 05:04 AM 1,572,346,154 abc-2025-01-23-095947-v20250122131007.sql
1 File(s) 1,572,346,154 bytes
Using same Windows command prompt used type command to list the start of the sql file.
type <file> /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';
Hopefully this gets you to the point that you can use the SQL file with PGAdmin to import the data.
NB
When I posted about this ~5 years ago, the file downloaded file type was tar.gz it is now sql.gz. The only difference is that now one less uncompressession step is needed.
Thank you so much for your help! I followed all the same steps (with one extra since my file still has tar.gz). I reached the same result with the sql file:
--
-- PostgreSQL database dump
--
.........
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
However, the issue is that when I use PgAdmin to get the data, all the tables are empty and the Users table is just missing.
Thank you so much for all your help! I really appreciate it. It turns out that I was trying to use the latest postgresql version whereas the dump.sql was from a previous version. I discovered this while trying to follow the guide you used. Thank you!