Система резервного копирования

14. Администрирование системы

Система резервного копирования

Система использует Spatie Laravel Backup для создания автоматических резервных копий баз данных и файлов, обеспечивая безопасность данных и возможность их восстановления в случае необходимости.

📦 Настройка резервного копирования

  • Папка резервных копий: /home/achille616/backups/cnc-ecommerce
  • Частота резервного копирования базы данных: каждые 6 часов (00:00, 06:00, 12:00, 18:00)
  • Частота полного резервного копирования: ежедневно в 02:00
  • Автоматическая очистка: ежедневно в 03:00
  • Срок хранения: все резервные копии хранятся в течение 7 дней
  • Уведомления: по электронной почте на info@cncsimulator.it в случае успешного выполнения/ошибок

Доступные команды

Создать резервную копию вручную

# Backup completo (database + file)
cd /var/www/cnc-ecommerce && php artisan backup:run

# Solo database
cd /var/www/cnc-ecommerce && php artisan backup:run --only-db

# Solo file
cd /var/www/cnc-ecommerce && php artisan backup:run --only-files

Просмотр доступных резервных копий

cd /var/www/cnc-ecommerce && php artisan backup:list

Очистить старые резервные копии

cd /var/www/cnc-ecommerce && php artisan backup:clean

Мониторинг состояния резервных копий

cd /var/www/cnc-ecommerce && php artisan backup:monitor

⚡ Ручная резервная копия перед выполнением критически важных операций

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

cd /var/www/cnc-ecommerce && php artisan backup:run --only-db

Мониторинг и уведомления

Система автоматически отправляет электронные письма info@cncsimulator.it по следующим поводам:

  • ✅ Резервное копирование успешно завершено
  • ❌ Резервное копирование завершилось с ошибкой
  • ⚠️ Резервная копия неисправна (слишком старая или слишком большая)
  • 🧹 Очистка завершена

Автоматическое планирование

Резервное копирование настроено на автоматическое выполнение с помощью планировщика задач Laravel:

Тип резервной копии Частота Время
База данных Каждые 6 часов 00:00, 06:00, 12:00, 18:00
Полная (БД + файлы) Ежедневно 02:00
Очистка старых резервных копий Ежедневно 03:00

Устранение неполадок

Сбой резервного копирования

# Controllare i log
tail -100 /var/www/cnc-ecommerce/storage/logs/laravel.log

# Verificare spazio disco
df -h /home/achille616/backups

# Verificare permessi
ls -la /home/achille616/backups/cnc-ecommerce

Размер резервной копии слишком велик

Изменить config/backup.php для исключения дополнительных папок:

'exclude' => [
    base_path('vendor'),
    base_path('node_modules'),
    base_path('storage/logs'),
    // Aggiungi qui altre cartelle da escludere
],

🔒 Примечания по безопасности

  • 1. Удаленное резервное копирование: рассмотрите возможность настройки второго удаленного хранилища (S3, FTP)
  • 2. Шифрование: резервные копии можно зашифровать с помощью BACKUP_ARCHIVE_PASSWORD
  • 3. Доступ: Только пользователь achille616 должен иметь доступ
  • 4. Тестирование: регулярно тестируйте восстановление, чтобы убедиться, что резервные копии работают