articles:armers:dbmaintance

Обслуживание базы данных PostgreSQL АРМ ЭРС/АРМ ЭЛН

Чтобы обслужить базу данных и держать ее состояние в тонусе - нужно периодически проводить определенные процедуры

Для доступа в админку СУБД нужно перейти в: C:\postgresql\bin

Запустить файл: pgAdmin3.exe

Правой кнопкой мыши на БД - Подключиться

Логин: postgres
Пароль: Manager1

Правой кнопкой мыши на БД - Обслуживание

Появится следующее окно:


Операция VACUUM:

  • Выполняется для освобождения дискового пространства, занятого измененными или удаленными строками
  • Обновляет статистику по данным, которые используют планировщики запросов PostgreSQL
  • Обновляет карту видимости, которая ускоряет сканирование индекса
  • Предотвращает потерю очень старых данных

У VACUUM есть два параметра: FULL и ANALYZE

VACUUM FULL совершит попытку удалить все старые версии записей и уменьшит размер файла, содержащего таблицу. Полностью блокирует доступ к таблице.

VACUUM ANALYZE обновляет статистику по таблице которая используется оптимизатором запросов

Операцию VACUUM FULL рекомендуется запускать не чаще раза в неделю


Операция ANALYZE

Служит для обновления информации о распределении данных в таблице. Эта информация используется оптимизатором для выбора наиболее быстрого плана выполнения запроса.

Обычно команда используется в связке VACUUM ANALYZE. Если в базе есть таблицы, данные в которых не изменяются и не удаляются, а лишь добавляются, то для таких таблиц можно использовать отдельную команду ANALYZE. Также целесообразно использовать эту команду для отдельной таблицы после добавления в нее большого количества записей.


Операция REINDEX

Операция REINDEX используется для перестройки существующих индексов. Ее использование целесообразно в следующих случаях:

  • порча индекса;
  • постоянное увеличение размера индекса.

Для проведения технического обслуживания рекомендуется выполнить операции REINDEX и VACUUM (FULL, ANALYZE) в нерабочее время, т.к. операции блокируют доступ к БД, а также частота проведения данных операций зависит от скорости заполнения БД новыми или измененными данными.

Спасибо ресурсу jupiter8.ru за некоторую информацию взятую оттуда.


Всем, кому понравился или помог этот проект - Вы можете помочь ему развиваться материально:

Поддержать проект

  • articles/armers/dbmaintance.txt
  • Последнее изменение: 2023/05/19 15:24
  • 127.0.0.1