Checking which queries are running
Here, we will show you how to check which query is currently running.
Getting ready
You have to make sure that you are logged in as a superuser or as the same database user you want to check. Also, ensure that the parameter track_activities = on
is set (default behavior).
This can be done either in the postgresql.conf
file or by the superuser, using the following SQL statement:
SET track_activities = on
The way PostgreSQL allows a user to change configuration parameters at runtime is very powerful. You are advised to look at the reference page at http://www.postgresql.org/docs/current/static/sql-set.html.
How to do it…
To see which connected users are running at this moment, just run the following:
SELECT datname, usename, state, query FROM pg_stat_activity;
On systems with a lot of users, you may notice that the majority of backends have state
set to idle
. This denotes that no query is actually running, and PostgreSQL is waiting for new commands from...