You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
--
|
|
|
|
-- Author: Hari Sekhon
|
|
|
|
-- Date: 2020-08-05 17:49:13 +0100 (Wed, 05 Aug 2020)
|
|
|
|
--
|
|
|
|
-- vim:ts=2:sts=2:sw=2:et:filetype=sql
|
|
|
|
--
|
|
|
|
-- https://github.com/harisekhon/bash-tools
|
|
|
|
--
|
|
|
|
-- License: see accompanying Hari Sekhon LICENSE file
|
|
|
|
--
|
|
|
|
-- If you're using my code you're welcome to connect with me on LinkedIn and optionally send me feedback to help steer this or other code I publish
|
|
|
|
--
|
|
|
|
-- https://www.linkedin.com/in/harisekhon
|
|
|
|
--
|
|
|
|
|
|
|
|
-- PostgreSQL databases by size descending (only ones you can access)
|
|
|
|
--
|
|
|
|
-- Tested on PostgreSQL 12.3
|
|
|
|
|
|
|
|
SELECT
|
|
|
|
d.datname AS Name,
|
|
|
|
pg_catalog.pg_get_userbyid(d.datdba) AS Owner,
|
|
|
|
CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')
|
|
|
|
THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))
|
|
|
|
ELSE 'No Access'
|
|
|
|
END AS SIZE
|
|
|
|
FROM
|
|
|
|
pg_catalog.pg_database d
|
|
|
|
ORDER BY
|
|
|
|
CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')
|
|
|
|
THEN pg_catalog.pg_database_size(d.datname)
|
|
|
|
ELSE NULL
|
|
|
|
END
|
|
|
|
DESC;
|