К основному контенту

Установка и настройка pgAgent(планировщика заданий PostgreSQL)

Установка pgAgent

Последняя версия скрипта для установки агента тут.

Перенести инструкцию по агенту в отдельную тему.
1. Создать пользователя ОС, и сделать ему домашний каталог:
useradd -s /bin/false -r -M pgagent
mkdir /home/pgagent

2. Установить и настроить демон:
yum install pgagent_94
При наличии ошибок вида (была на Oracle Linux 6.8)
Error: Package: pgagent_94-3.4.0-1.rhel6.x86_64 (pgdg94)
           Requires: libwx_baseu-2.8.so.0(WXU_2.8)(64bit)

Нужно установить EPEL

systemctl enable pgagent_94
chown pgagent:pgagent /var/log/pgagent_94.log

3. Установить схему агента в базе:
sudo -u postgres psql -f /usr/share/pgagent_94-3.4.0/pgagent.sql postgres

4. Создать файл паролей для подключения агента к базе.
vi /home/pgagent/.pgpass
localhost:5432:*:postgres:postgres
chown pgagent.pgagent /home/pgagent -R
chmod 600 /home/pagent/.pgpass

5. Запустить и проверить работу агента
systemctl start pgagent_94.service
systemctl status pgagent_94.service

Еще одна проблема на 6-ке: попытка запуска службы агента падала с ошибкой.
Попытка запуска вручную(строку запуска взял из /etc/init.d/pgagent_94):

-bash-4.1$ /usr/bin/pgagent_94 -s /var/log/pgagent_94.log  hostaddr=127.0.0.1 dbname=postgres user=postgres port=5432

-bash-4.1$ 10:41:36: Error: Cannot get the official hostname (error 0: Success)

Проблема решена правкой файла /etc/hosts. В строке 127.0.0.1 поменять localhost на имя машины.

Проверить /var/log/pgagent_94.log предмет ошибок.

Комментарии

Популярные сообщения из этого блога

Включение логирования для Haproxy

Изначально логирование в syslog в HaProxy отключено. Ниже пример настройки логирования для ОС Centos 7. Настройка: Добавить строку  log 127.0.0.1 local2 в секцию global файла /etc/haproxy/haproxy.cfg Раскомментировать $ModLoad imudp и $UDPServerRun 514 в файле  /etc/rsyslog.conf Создать файл  /etc/rsyslog.d/haproxy.conf со следующим содержимым:  local2.* /var/log/haproxy.log Перезапустить rsyslog и haproxy.

Использование oraenv для установки окружения.

Для настройки окружения в Linux можно все параметры базы указать в .bash_profile: ORACLE_HOME=/app/oracle/product/11.2.0.4/dbhome_1 export ORACLE_HOME ORACLE_BASE=/app/oracle export ORACLE_BASE ORACLE_SID=orcl export ORACLE_SID PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export PATH Но лучше использовать для этих целей утилиту oraenv. oraenv берет данные из файла /etc/oratab orcl:/app/oracle/product/12.1.0/dbhome_1:N И на ее основе задает параметры окружения: ORACLE_SID, ORACLE_BASE,ORACLE_HOME и PATH Использовать можно в интерактивном режиме: . oraenv ORACLE_SID = [orcl] ? orcl The Oracle base has been set to /app/oracle И в неинтерактивном режиме. Добавить в  .bash_profile: ORACLE_SID=orcl ORAENV_ASK=NO . oraenv Для ASM ситуация аналогичная. . oraenv ORACLE_SID = [orcl] ? +ASM1 The Oracle base has been set to /u01/app/oracle echo $ORACLE_HOME /app/11.2.0/grid