ак посмотреть размер баз и таблиц в PostgreSQL [исправить]
Для сопоставления OID номеров и имен баз и таблиц в contrib есть утилита oid2name.
Для просмотра размера таблиц для текущей базы:
SELECT relname AS name, relfilenode AS oid, (relpages * 8192 / (1024*1024))::int as size_mb, reltuples as count
FROM pg_class
WHERE relname NOT LIKE 'pg%'
ORDER BY relpages DESC;
Для просмотра общего размера баз можно использовать скрипт:
#!/bin/sh
oid2name=/usr/local/pgsql/bin/oid2name
pg_data_path=/usr/local/pgsql/data/base
{
$oid2name| grep '='| while read oid delim name; do
size=`du -s $pg_data_path/$oid|cut -f1`
echo "$size $name"
done
}|sort -rn
Другой вариант просмотра размера базы:
select pg_database_size('имя базы');
Размер таблицы:
select select pg_relation_size('имя таблицы');
Полный размер таблицы с сопутствующих индексов.
select pg_total_relation_size('имя таблицы');
Размер столбцов
select pg_column_size('имя стобца') from 'имя таблицы';
Состояние всех настроек можно посмотреть через функцию pg_show_all_settings().
четверг, 8 сентября 2011 г.
Подписаться на:
Сообщения (Atom)