Business Suite

Documentation / Update Procedures / Data Backup Best Practices

Data Backup Best Practices Guide

Overview

Regular backups are crucial for protecting your business data and ensuring business continuity. This guide outlines best practices for backing up your CloudOnex Business Suite installation.

Types of Backups Required

1. Database Backup

Contains all your business data including:

  • Customer information
  • Financial records
  • Invoices and transactions
  • System settings
  • User accounts

2. File System Backup

Includes:

  • Configuration files
  • Custom themes
  • Uploaded documents
  • Plugins
  • Custom modifications

Backup Schedule Recommendations

Critical Business Data

  • Frequency: Daily
  • Retention: Minimum 30 days
  • Type: Automated incremental backups

Complete System Backup

  • Frequency: Weekly
  • Retention: Minimum 3 months
  • Type: Full system backup

Configuration Backup

  • Frequency: After each system modification
  • Retention: Keep last 5 versions
  • Type: Manual backup of config files

Backup Methods

1. Using Built-in Tools

Database Backup

  1. Navigate to Utilities → Database Status
  2. Click "Backup Database"
  3. Store the downloaded file securely

File Backup through Control Panel

  1. Access your hosting control panel
  2. Navigate to File Manager
  3. Select the CloudOnex installation directory
  4. Click "Compress" or "Create Archive"
  5. Download the compressed file

2. Automated Backup Solutions

Using Hosting Provider Tools

  • Most hosting providers offer automated backup solutions
  • Configure daily backups through your hosting control panel
  • Enable automatic retention policies

Custom Backup Script

#!/bin/bash
# Example backup script
DATE=$(date +%Y-%m-%d)
BACKUP_DIR="/path/to/backup/directory"

# Database backup
mysqldump -u [username] -p[password] [database_name] > $BACKUP_DIR/db_backup_$DATE.sql

# File backup
tar -czf $BACKUP_DIR/files_backup_$DATE.tar.gz /path/to/cloudonex/installation

# Remove backups older than 30 days
find $BACKUP_DIR -type f -mtime +30 -delete

Critical Files to Back Up

System Files

  • /system/config.php (Contains database and core settings)
  • /system/overrides/ (Custom overrides)
  • /apps/ (Custom plugins)
  • /ui/theme/ (Theme customizations)

User Data

  • /storage/ (Uploaded files)
  • /system/uploads/ (System uploads)

Backup Security

Storage Requirements

  • Encrypt backup files using AES-256 encryption
  • Store backups in multiple locations
  • Use secure transfer protocols (SFTP/SCP) for remote storage

Access Control

  • Limit backup access to authorized personnel
  • Use strong passwords for backup archives
  • Maintain an access log for backup operations

Backup Testing and Verification

Regular Testing Schedule

  • Test database restore monthly
  • Verify file integrity weekly
  • Conduct full system restore quarterly

Testing Procedure

  1. Create a test environment
  2. Restore backup to test environment
  3. Verify:
    • Database integrity
    • File completeness
    • System functionality
    • Custom modifications

Recovery Procedures

Database Recovery

-- Example database restore command
mysql -u [username] -p[password] [database_name] < backup_file.sql

File System Recovery

# Extract backup archive
tar -xzf backup_file.tar.gz -C /path/to/destination

# Set proper permissions
chown -R www-data:www-data /path/to/cloudonex
chmod -R 755 /path/to/cloudonex