====== Базы данных X-Road: serverconf и op-monitor ====== ==== serverconf ==== === Описание === База данных serverconf - хранилище конфигурации Security Server. **Содержит:** * Информацию о клиентах и подсистемах * Настройки сервисов и списки контроля доступа (ACL) * Сертификаты и ключи аутентификации * Параметры подключения к Central Server * Конфигурацию endpoints сервисов **Характеристики:** * Небольшой размер базы данных * Низкая интенсивность операций записи * Критична для работы Security Server === Проверка === Подключение к базе: sudo -u postgres psql -d serverconf Размер базы: sudo -u postgres psql -c "SELECT pg_size_pretty(pg_database_size('serverconf'));" === Резервное копирование === Создание бэкапа: sudo -u postgres pg_dump serverconf > serverconf_backup_$(date +%Y%m%d).sql Восстановление: sudo -u postgres psql serverconf < serverconf_backup_20250209.sql Всегда создавайте резервные копии serverconf перед изменениями конфигурации! ==== op-monitor ==== === Описание === База данных op-monitor — хранилище операционных метрик и статистики. **Содержит:** * Данные о производительности сервисов * Статистику запросов (время ответа, размер сообщений) * Информацию об ошибках * Метрики использования системы * Данные для мониторинга и отчетности **Характеристики:** * Средний размер базы данных * Средняя интенсивность записи * Используется для анализа и мониторинга === Проверка === Подключение к базе: sudo -u postgres psql -d op-monitor Размер базы: sudo -u postgres psql -c "SELECT pg_size_pretty(pg_database_size('op-monitor'));" Количество записей: sudo -u postgres psql -d op-monitor -c "SELECT COUNT(*) FROM opmonitor;" ==== Обслуживание баз данных ==== === Проверка размера всех баз X-Road === sudo -u postgres psql -c "SELECT pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) AS size FROM pg_database WHERE datname IN ('serverconf', 'messagelog', 'op-monitor');" === VACUUM === Для всех баз X-Road: for db in serverconf messagelog op-monitor; do sudo -u postgres psql -d $db -c "VACUUM ANALYZE;" done Рекомендуется выполнять VACUUM регулярно для оптимальной работы PostgreSQL ---- Автор Даниил Горбенко