Шпаргалка для PostgreSQL

Работа с PostgreSQL: настройка и масштабирование

Работа с PostgreSQL: настройка и масштабирование А. Ю. Васильев aka leopard Creative Commons Attribution-Noncommercial 4.0 International 2017

Блокировки

======================    Idle In Transaction Session Timeout

параметр который определяет сколько можно безнаказано висеть

больше - принудительный rollback

===================  pg_blocking_pids

Статистика для PostgreSql

Статистика сбрасывается на диск в каталог pg_stat и pg_stat_tmp

Текущая активность

Кто сейчас происходит в базе: (клиентские и серверные процессы)

================================================  pg_stat_activity 

параметры

Динамический SQL и NDS команды PL/SQL на примерах

Пожалуй, написание динамических команд SQL и динамических программ PL/SQL было самым интересным делом из всего, что я когда-либо делал на языке PL/SQL. Конструирование и динамическое выполнение обеспечивает невероятную гибкость. У разработчика появляется возможность создавать обобщенный код с широким спек­тром применения.

MERGE в POstgreSql, эскиз

Oracle statement:
 
 
 
MERGE INTO acme_obj_value d
USING ( SELECT object_id
        FROM   acme_state_tmp
      ) s
ON (d.object_id = s.object_id)
  WHEN matched THEN
    UPDATE SET d.date_value = LEAST(l_dt, d.date_value)
  WHEN NOT matched THEN
    INSERT (d.id, d.object_id, d.date_value)
    VALUES (acme_param_sequence.NEXTVAL, s.object_id, l_dt)
 
 
PostgreSQL statement:
 

Бэкапирование (логическое) кластера баз

Первая часть - скрипты на бекапирование всех рабочих кластеров баз, которые есть в эксплуатации.

Вторая - бекапирование конфигурационных файлов.

Barman

PostgreSQL поддерживает возможности физического и логического бэкапа, добавляя к ним еще один уровень WAL (см. врезку), который можно назвать непрерывным копированием. Но управлять при помощи штатных инструментов несколькими серверами не очень удобно даже админу со стажем, а в случае сбоя счет идет на секунды.

Чем мониторить postgresql online

Grafana, подключение к Zabbix Server           http://ithelp21.ru/ustanovka-grafana-podklyutchenie-k-zabbix-server/
 
 
 
1. настраиваем brubeck + graphite + grafana
2. пишем крон или демон который раз в минуту или n-секунд забирает данные из pg_stat_* и pg_statio_* и скидывает в brubeck
3. настраиваем dashboards в графане
 

Prometheus

Step 1 — Installing Prometheus Server

First, create a new directory to store all the files you download in this tutorial and move to it.

Страницы

Подписка на материализация идей RSS