UnderHost
Knowledgebase Docs

Backups in CloudPanel-files and databases

Create and download website and database backups using CloudPanel's built-in backup tools. Schedule regular backups and understand where backup files are stored.

On this page

CloudPanel includes a basic backup system for websites and databases. Backups are stored on the same server by default, so it is essential to download copies off-server regularly. Always have a backup before making any significant changes to a site.

CloudPanel backup overview

CloudPanel can back up:

  • Website files (all files in the site's htdocs/ directory)
  • Databases associated with the site

Backups are created as compressed archives stored in /home/SYSTEM_USER/backups/ on the server. You download them via SFTP to keep a local or cloud copy.

Back up website files

  1. Log in to CloudPanel and go to Sites → your site
  2. Click the Backup tab
  3. Click Create Backup
  4. Select Files (or both Files and Database for a complete backup)
  5. Click Create

CloudPanel compresses the site files into a .tar.gz archive. For large sites this can take a few minutes. The backup appears in the backup list when complete.

Download the backup via SFTP-connect with the site's system user and navigate to ~/backups/. See SFTP guide.

Back up databases

Database backups can be created from the Backup tab alongside file backups, or separately via phpMyAdmin export or the command line:

mysqldump -u DB_USER -p DB_NAME | gzip > /home/SYSTEM_USER/backups/db-$(date +%Y%m%d).sql.gz

This creates a date-stamped compressed SQL dump. Replace DB_USER, DB_NAME, and SYSTEM_USER with your actual values.

Schedule backups

CloudPanel's cron manager can trigger automated backups on a schedule. For a daily file + database backup via cron:

  1. Go to Sites → your site → Cron Jobs
  2. Add a cron job with the CloudPanel backup CLI command. The exact command depends on your CloudPanel version-consult the CloudPanel documentation or use clpctl site:backup if available
  3. Set the schedule (e.g., daily at 2am: 0 2 * * *)

Alternatively, set up a cron job that uses mysqldump and rsync to back up and sync to an off-site location.

Restore from a backup

Restore files:

  1. Upload the backup archive to the server via SFTP
  2. Extract it to the correct htdocs/ directory via SSH:
    tar -xzf backup.tar.gz -C /home/SYSTEM_USER/htdocs/yourdomain.com/

Restore a database:

  1. In phpMyAdmin: select the target database, click Import, and upload the SQL file
  2. Or via SSH: mysql -u DB_USER -p DB_NAME < backup.sql

Off-site backup strategy

Backups stored only on the same server are not true protection-a hardware failure, fire, or ransomware could destroy both the live site and the backup simultaneously.

Recommended approach for CloudPanel VPS:

  • Configure CloudPanel or a cron job to create daily backups
  • Use rsync or rclone to sync backups to a remote location (another server, S3, Backblaze B2, or Google Drive)
  • For WordPress sites, a plugin like UpdraftPlus can back up directly to cloud storage automatically
  • Keep at least 7 days of backups to protect against delayed discovery of problems
Ask about UnderHost VPS snapshot backups

Some UnderHost VPS plans include daily snapshot backups managed at the hypervisor level. These are separate from CloudPanel's application-level backups and cover the entire server state. Check your plan details or open a support ticket to confirm what backup options are included.

Related: How to create and manage databases in CloudPanel | How to connect to CloudPanel via SFTP | Backup best practices for web hosting | How to restore files and databases from a backup

Was this article helpful?

Need CloudPanel on a server?

Use CloudPanel on an UnderHost VPS or dedicated server for fast PHP app and WordPress hosting without a heavy panel stack.

Related articles

Back to CloudPanel