Как посмотреть размер базы ?
Регламентная очистка
Виртуальный образ p962.ova
краткий справочник
тоже
Скрипт автоматической переиндексации (reindex) и удаления мертвых данных (full vacuum) в базе postgresql.
Автоматическая сборка мусора (Automatic Vacuuming) в PostgreSQL
Опыт обслуживания базы 1С в PostgreSQL
Как посмотреть размер базы demo postgresql?
$ sudo su - postgres
$ psql
В байтах:
postgres=# select pg_database_size('demo');
pg_database_size
------------------
5579448836
(1 строка)
postgres=#
В Мбайтах:
postgres=# SELECT pg_size_pretty( pg_database_size( 'demo' ) );
pg_size_pretty
----------------
5321 MB
(1 строка)
postgres=#
Для борьбы с падением производительности, рекомендуют ночью запускать vacuumdb
$ sudo su - postgres
Посмотреть базы:
psql -l
Список баз данных Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа -----------+----------+-----------+-------------+-------------+----------------------- demo | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | postgres | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | template0 | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (4 строки) Сборка мусора вручную от пользователя posgres (примерно 5 минут) $ vacuumdb --verbose --analyze --full --dbname=demo переиндексация баз
########################################################
Не регламентная операция
$ reindexdb --all reindexdb: переиндексация базы данных "demo" reindexdb: переиндексация базы данных "postgres" reindexdb: переиндексация базы данных "template1" ########################################################
Можно настроить cron
Установка Postfix — агент передачи почты (MTA — mail transfer agent)Выбрать (только локальное использование)
$
sudo apt-get install postfix
$ sudo su - postgres
$ crontab -e
(первый запуск по умолчанию [2])
Добавить в конец файла
# Запуск vacuumdb каждый день в 22.01 предварительно удалив в 22.00 сообщения.
#00 22 * * *
cp /dev/null /var/mail/postgres
#01 22 * * * vacuumdb --verbose --analyze --full --quiet --dbname=demo
#Краткая форма:
01 22 * * * vacuumdb --analyze --full --quiet --dbname=demo
Сохранить.
Смотреть задания:
$ crontab -l
#####################################################
Смотреть сообщения:
$ sudo su - postgres
$
tail /var/mail/
postgres
(можно $
nano /var/mail/postgres или просто через mc)
Но tail удобен тем что выводит последнее сообщение,
не забываем что работаем от пользователя postgres
postgres@ufo:~$ tail /var/mail/postgres
Content-Transfer-Encoding: 8bit
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/var/lib/postgresql>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=postgres>
Message-Id: <20180725111851.ADBBE19446DF@ufo>
Date: Wed, 25 Jul 2018 14:18:51 +0300 (MSK)
vacuumdb: очистка базы данных "demo"
postgres@ufo:~$
Комментариев нет:
Отправить комментарий