База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как сделать автоматический бэкап баз данных 1С на AltLinux с PostgreSQL? › RE: Как сделать автоматический бэкап баз данных 1С на AltLinux с PostgreSQL?

Для автоматизации процесса резервного копирования баз данных 1С на Альт Линуес с использованием PostgreSQL 15.12, можно использовать скрипты и планировщик задач. Вот пошаговая инструкция:
### 1. Создание скрипта для бэкапа
Создайте скрипт, который будет выполнять резервное копирование базы данных. Например, создайте файл backup.sh
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | bash #!/bin/bash # Параметры DB_NAME="имя_вашей_базы" DB_USER="postgres" BACKUP_DIR="/путь/к/директории/бэкапов" DATE=$(date +"%Y%m%d_%H%M%S") BACKUP_FILE="$BACKUP_DIR/$DB_NAME_$DATE.backup" # Создание бэкапа pg_dump -U $DB_USER -F c -b -v -f "$BACKUP_FILE" $DB_NAME # Проверка на ошибки if [ $? -eq 0 ]; then echo "Бэкап успешно создан: $BACKUP_FILE" else echo "Ошибка при создании бэкапа" exit 1 fi |
### 2. Удаление старых бэкапов
Добавьте в скрипт логику для удаления старых бэкапов. Например, чтобы удалять бэкапы старше 7 дней:
1 2 3 | bash # Удаление старых бэкапов find $BACKUP_DIR -type f -name "$DB_NAME_*.backup" -mtime +7 -exec rm {} ; |
### 3. Проверка качества бэкапов
Для проверки целостности бэкапа можно использовать команду pg_restore
:
1 2 3 4 5 6 7 8 9 | bash # Проверка бэкапа pg_restore -l "$BACKUP_FILE" > /dev/null if [ $? -eq 0 ]; then echo "Бэкап $BACKUP_FILE прошел проверку" else echo "Ошибка проверки бэкапа $BACKUP_FILE" exit 1 fi |
### 4. Настройка планировщика задач
Используйте cron
для автоматизации выполнения скрипта. Откройте crontab:
1 2 | bash crontab -e |
Добавьте строку для выполнения скрипта, например, каждый день в 2 часа ночи:
1 2 | bash 0 2 * * * /путь/к/backup.sh |
### 5. Установка прав на выполнение
Не забудьте сделать скрипт исполняемым:
1 2 | bash chmod +x /путь/к/backup.sh |
### 6. Тестирование
Запустите скрипт вручную, чтобы убедиться, что он работает корректно:
1 2 | bash /путь/к/backup.sh |
### Заключение
Теперь у вас есть автоматизированный процесс резервного копирования баз данных 1С на Альт Линуес с использованием PostgreSQL, который создает бэкапы в заданное время, удаляет старые бэкапы и проверяет их на качество.