What is the server uptime?
You may wonder, How long has it been since the server started?
As mentioned in the previous recipe, we will find this out by asking the database server.
How to do it…
Issue the following SQL from any interface:
postgres=# SELECT date_trunc('second',
current_timestamp - pg_postmaster_start_time()) as uptime;
You should get output as follows:
uptime -------------------------------------- 2 days 02:48:04
How it works...
Postgres stores the server start time, so we can access it directly, as follows:
postgres=# SELECT pg_postmaster_start_time(); pg_postmaster_start_time ---------------------------------------------- 2018-01-01 19:37:41.389134+00
Then, we can write a SQL query to get the uptime, like this:
postgres=# SELECT current_timestamp - pg_postmaster_start_time();
?column?
--------------------------------------------------------
2 days 02:50:02.23939
Finally, we can apply some formatting:
postgres=# SELECT date_trunc('second', current_timestamp - pg_postmaster_start_time...