Sobes.tech
Middle

O que você automatiza no seu trabalho? Dê um exemplo de um script que você escreveu recentemente ou que se lembra.

sobes.tech IA

Resposta da IA

Автоматизирую рутинные задачи по развертыванию инфраструктуры и приложений, мониторингу, сборке, тестированию и доставке кода.

Пример скрипта для автоматического бэкапа базы данных:

#!/bin/bash

# Переменные
DB_USER="user"
DB_PASSWORD="password"
DB_NAME="mydatabase"
BACKUP_DIR="/mnt/backups/db"
TIMESTAMP=$(date +%Y-%m-%d_%H-%M-%S)
BACKUP_FILE="$BACKUP_DIR/$DB_NAME-$TIMESTAMP.sql.gz"
RETENTION_DAYS=7 # Количество дней для хранения бэкапов

# Создание директории для бэкапов, если она не существует
mkdir -p "$BACKUP_DIR"

# Создание бэкапа
mysqldump -u"$DB_USER" -p"$DB_PASSWORD" "$DB_NAME" | gzip > "$BACKUP_FILE"

# Проверка успешности бэкапа
if [ $? -eq 0 ]; then
    echo "Бэкап базы данных $DB_NAME успешно создан: $BACKUP_FILE"
else
    echo "Ошибка при создании бэкапа базы данных $DB_NAME"
    exit 1
fi

# Удаление старых бэкапов
find "$BACKUP_DIR" -type f -name "*-${DB_NAME}-*.sql.gz" -mtime +"$RETENTION_DAYS" -delete

echo "Старые бэкапы удалены."