Connessione remota


Vogliamo adesso usare DBeaver per collegarci al nostro database PostgreSQL: scarica l'applicazione dal sito ufficiale
https://dbeaver.io/

Scegliere una password per PostgreSQL

Normalmente ci colleghiamo alla console di PostgreSQL con l'utente Linux che usiamo su Singularity.
Per collegarci in remoto però dobbiamo scegliere un'ulteriore password.
Collegati a Singularity con SSH e accedi alla console con
psql

Imposta la password per la connessione remota del tuo utente personalizzando questa query con il tuo nome utente e la password scelta:

ALTER USER "a.ros" ENCRYPTED PASSWORD '12345';

Tunnel SSH con DBeaver

Ora passa a DBeaver e crea una nuova connessione di tipo PostgreSQL (probabilmente ti sarà chiesto di scaricare il driver corrispondente).
Per prima cosa configura un tunnel SSH dalla relativa scheda:

 NAT della porta

La traslazione della porta da 5432 a 5433 normalmente non è necessaria, a meno che tu non abbia un server PostgreSQL anche sulla tua macchina di sviluppo.
Non serve quindi che tu modifichi le impostazioni avanzate.

Al termine premi "Test tunnel configuration" e verifica se il tunnel funziona:

Passa ora alla scheda principale e configura la porta (se non usi quella di default), il nome del database (che corrisponde al tuo username su Singularity), il nome utente e la password che hai scelto nel passaggio precedente.

Verifica che la connessione funzioni:

Esplorazione del database

Divertiti ora a esplorare il tuo database, vedendo quali schema hai creato e quali tabelle sono presenti al loro interno:
Ecco ad esempio il contenuto della tabella che Rails ha creato per il model Like:
Con DBeaver oltre a visualizzare i dati presenti nel tuo database, puoi anche modificarli a tuo piacere!
Avendo un lungo elenco di prodotti ad esempio, potresti trovarti meglio a fare delle modifiche sulla tabella di DBaver piuttosto che aprendo le singole schede dei prodotti dall'applicazione.