PostgreSQL - Как узнать размер таблиц в базе данных

  • Последнее обновление: 3 Апреля 2024 г.
  • Просмотры: 44
  • Автор: Админ
PostgreSQL - Как узнать размер таблиц в базе данных

Коллеги всем привет.

В сегодняшней статье мы поговорим о том как узнать размер таблиц в базе данных PostgreSQL.

Знать размер своих таблиц является важной задачей и каждый администратор базы данных должен знать как это делать. Мы рассмотрим несколько универсальных запросов которые позволят узнать размер какой-то определенной таблицы и всех сразу.

 

В первом варианте мы выведем 5 самых больших таблиц в базе данных postgres, для этого выполним запрос.

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 5;


 

В этом варианте запрос показывает общий размер всех таблиц, включая все индексы в текущей базе данных.

SELECT nspname || '.' || relname AS "relation",
pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN ('pg_catalog', 'information_schema')
AND C.relkind <> 'i'
AND nspname !~ '^pg_toast'
ORDER BY pg_total_relation_size(C.oid) DESC;


 

Запрос, который показывает размер определенной таблицы в базе данных.

SELECT pg_size_pretty( pg_total_relation_size( 'table_name' ));


 

Запрос, который показывает размер индекса.

SELECT pg_size_pretty(pg_indexes_size('index_empid'));


 

Всем спасибо, я надеюсь что вам моя статья хоть чем-то помогла.

 

ПОХОЖИЕ СТАТЬИ

PostgreSQL как установить часовый пояс Time Zone
Скачать и установить Postgresql 14 на Linux CentOS/RHEL 8/7 TAR
Postgresql - Список пользователей