23.01.2026
Приступим.
Сперва нам нужно зайти в консоль нашего сервера по ssh, для этого используем putty или аналогичное приложение.
Далее подключаемся к SQL серверу, посредством команды:
# sudo -u postgres psql
После чего мы попадём в консоль SQL сервера, теперь посмотрим список баз:
# \l+
"+" в данной команде расширяет вывод и в списке баз мы сразу видим, например, и их размер.
Размер отдельной БД можно посмотреть командой:
# SELECT pg_size_pretty( pg_database_size( 'ваша_БД' ) );
Теперь давайте выберем базу данных и посмотрим, какие таблицы у нас самые грузные, а так как таблиц много - отсортируем первые 20шт, для этого используем SQL-код:
# \connect Ваша_БД;
# SELECT nspname || '.' || relname AS "relation",
pg_size_pretty(pg_relation_size(C.oid)) AS "size"
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
ORDER BY pg_relation_size(C.oid) DESC
LIMIT 20;
В выводе мы увидим размер 20 таблиц, отсортированных по объёму.
То, что было необходимы - мы сделали, цель достигнута.
Всем удачи