System Backup
Module for System Backup Management.
Overview
The System Backup module provides backup management capabilities for your Open Core Business Suite installation. It enables administrators to create, schedule, download, and restore backups of the database, application files, and modules.
Features
- Database Backups: Backup the application database
- File Backups: Backup application files and uploads
- Module Backups: Backup installed modules
- Scheduled Backups: Automated backups on configurable schedules (daily, weekly, monthly, or custom cron)
- Backup Download: Download backup files directly from the admin panel
- Backup Restoration: Restore from previous backups with selectable restore items
- Storage Providers: Support for multiple storage providers (local and others)
- Backup Progress Tracking: Monitor backup progress in real-time
- Retention Policies: Configure retention days per schedule for automatic cleanup
- Backup Statistics: View backup counts, sizes, and success/failure rates
Requirements
- Open Core Business Suite (Base System)
- No additional module dependencies
- Sufficient storage space for backups
Installation
Enable via Admin Panel
- Log in as administrator
- Navigate to Settings > Addons
- Find System Backup and click Enable
- Run migrations if prompted
Enable via Command Line
php artisan module:enable SystemBackup
php artisan migrate
Navigation
Access backup management through the sidebar menu:
- Backup & Restore > Backups - View and manage all backups
- Backup & Restore > Schedules - Manage backup schedules
Usage
Creating a Manual Backup
- Navigate to Backup & Restore > Backups
- Click Create Backup
- Optionally enter a backup name (auto-generated if left blank)
- Select a storage provider
- Choose what to include: Database, Files, Modules (any combination)
- Click Create and monitor the progress
Viewing Backups
The Backups page displays all backups in a datatable with:
- Backup name and included items (Database, Files, Modules badges)
- Backup type (manual or scheduled)
- Status (completed, failed, in progress)
- File size
- Storage provider
- Created by user
- Creation date
- Actions: View Details, Restore, Download, Delete
Restoring from Backup
- Navigate to Backup & Restore > Backups
- Find the backup to restore (must have "completed" status)
- Click Restore
- Optionally select which items to restore (defaults to all items in the backup)
- Confirm the restoration
Downloading Backups
- Find the completed backup in the list
- Click the Download action
- The backup ZIP file will download to your browser
Managing Backup Schedules
Navigate to Backup & Restore > Schedules to manage automated backups:
Creating a Schedule
Configure a schedule with the following options:
| Setting | Description |
|---|---|
| Name | A descriptive name for the schedule |
| Frequency | Daily, Weekly, Monthly, or Custom (cron expression) |
| Time | Time of day to run the backup |
| Days of Week | Which days to run (for weekly frequency) |
| Day of Month | Which day to run (for monthly frequency) |
| Cron Expression | Custom cron expression (for custom frequency) |
| Storage Provider | Where to store the backup |
| Included Items | Database, Files, and/or Modules |
| Retention Days | How many days to keep backups from this schedule |
Managing Schedules
- Enable/Disable: Toggle individual schedules on or off
- Edit: Update schedule configuration
- Run Now: Manually trigger a scheduled backup
- Delete: Remove a schedule
Backup Statistics
View backup statistics including:
- Total backups count
- Successful and failed backup counts
- Total backup storage size
- Number of active schedules
- Recent backup history
Best Practices
- Regular Testing: Periodically test backup restoration
- Monitor Disk Space: Ensure adequate storage for backups
- Set Retention Policies: Configure appropriate retention days on schedules to prevent storage exhaustion
- Schedule Off-Peak: Set backup schedules during low-usage hours
Troubleshooting
Backup Fails
- Check available disk space on the storage provider
- Review application logs for detailed error messages
- Ensure the application has write permissions to the backup storage directory
Cannot Restore Backup
- Verify the backup has "completed" status
- Check that the backup file still exists in storage
- Review application logs for restoration errors
Backup Too Large
- Create more targeted backups (database only, or files only)
- Adjust retention policies to clean up older backups
- Consider using an external storage provider
Changelog: View version history