PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come puoi connettere gli utenti attivi a un database postgreSQL tramite SQL?

(domanda) Non ricevere queste informazioni in

seleziona * da pg_user;

o utilizzando la vista pg_stat_activity:

select * from pg_stat_activity;

Aggiunto:

la vista dice:

Una riga per processo del server, che mostra l'OID del database, il nome del database, l'ID del processo, l'OID dell'utente, nome utente , query corrente, stato di attesa della query, ora in cui è iniziata l'esecuzione della query corrente, ora in cui è stato avviato il processo e indirizzo e numero di porta del cliente . Le colonne che riportano i dati sulla query corrente sono disponibili a meno che il parametro stats_command_string non sia stato disattivato. Inoltre, queste colonne sono visibili solo se l'utente che esamina la vista è un superutente o lo stesso utente che possiede il processo su cui viene segnalato.

non puoi filtrare e ottenere queste informazioni? che saranno gli utenti correnti sul database, puoi utilizzare il tempo di esecuzione iniziato per ottenere tutte le query degli ultimi 5 minuti, ad esempio...

qualcosa del genere.