---
component: ROOT
version: "2026.1"
slug: ROOT/administration/database-backups
canonical_url: "https://docs.gradle.com/develocity/2026.1/administration/data-management/database-backups/"
title: "Database Backups"
description: "Configure and manage backup schedules for your Develocity database."
keywords: []
status: current
---

<!-- llms-index: https://docs.gradle.com/develocity/llms.txt -->

# Database Backups

<a id="preamble"></a>

<a id="database-backups"></a>

Establish and monitor recurring backup schedules to ensure data integrity and disaster recovery readiness.

In addition to disaster recovery, backup archives can be used to migrate your Develocity data to a new host system. This can be useful in scenarios where a trial instance is promoted to a production one.

Develocity supports two primary database configurations—**Embedded** and **User-Managed**—each with a different management model.

<a id="backup-responsibility-model"></a>

## Backup Responsibility Model

 
| Database Type | Responsibility |
| --- | --- |
| Embedded | Develocity manages the backup process. Admins configure schedules via the UI or CLI. |
| User-Managed | Backups are the responsibility of your Database Administrator (DBA) or Cloud Provider (e.g., Amazon RDS, Azure SQL). |

> [!WARNING]
> For User-Managed databases, Gradle Support cannot assist with database-level recovery. Ensure you have a tested disaster recovery procedure in place using your provider’s native tools (e.g., pg\_dump, pg\_restore, or RDS Snapshots).

<a id="backups_embedded"></a>

## Configuring Embedded Backups

For installations using the embedded database, you can automate backups without system downtime.

The backup location is configured separately during installation. See the [Kubernetes Installation Manual](https://docs.gradle.com/develocity/2026.1/installation/kubernetes-installation/#storage) or [Standalone Installation Manual](https://docs.gradle.com/develocity/2026.1/installation/standalone-installation/#storage) for details.

<a id="configure-via-the-user-interface"></a>

### Configure via the User Interface

1.  Navigate to **Administration**  **Backups**.
    
2.  Enable backups.
    
3.  Define your schedule (Daily, Weekly, or Custom).
    
4.  Configure **Email Notifications** to receive alerts upon backup success or failure. This requires [administrator email details and SMTP server settings](https://docs.gradle.com/develocity/2026.1/administration/system-configuration/email-server/) to be configured for the Develocity instance.
    
5.  Click **Save**.
    
6.  Select **Apply and restart** in the upper right corner.
    

> [!IMPORTANT]
> Applying the configuration updates the system services and may take several minutes to complete.

![Backup Schedule Configuration in Develocity UI](https://docs.gradle.com/develocity/2026.1/administration/data-management/database-backups/../../_images/dv-ui-backup-schedule.png)

Backup Schedule Configuration in Develocity UI

<a id="configuration-fields"></a>

### Configuration Fields

 
| Setting | Description |
| --- | --- |
| Number of backups to retain | The number of backup archives to keep before automatic deletion. |
| Email Notifications | Enable email notifications for backup events. |
| Schedule | Schedule type (Daily, Weekly, or Custom). |
| Time of Day (UTC) | Time of day to perform the backup (24-hour format). |

We encourage you to back up your configuration settings regularly to prevent data loss.  
You can export settings via the Administration menu by selecting **Administration**  **Import/Export**  **Export**.

<a id="backups_embedded_creating"></a>

### Manual Backups

You can trigger an immediate backup at any time via the [Develocity CLI](https://docs.gradle.com/develocity/develocityctl/1.22/):

```shell
develocityctl backup create
```

`develocityctl` responds to a successful command with the following:

**Output:**

```
Found Develocity installed in the 'develocity' namespace.
Running Develocity backup
Low disk space threshold is 1024MiB
[BACKUP_HISTORY] Backup started
Starting Postgres backup...
Backing up Postgres data directory...
98
Stopping Postgres backup and copying WAL files...
Compressing WAL files...
100
Adding WAL files to backup archive...
Created backup: backup-20240118-174811.zip
Skipping old backup cleanup as no BACKUP_RETENTION env var set
Backup completed in 4 seconds
[BACKUP_HISTORY] Backup completed
```

The output includes the name of the backup, which can be found in the `/opt/gradle/backups` directory. You can download the newly created backup locally by running the `backup copy` command. The backup archive will be copied to the directory in which the command is executed. If multiple backups exist you’ll be prompted to select the backup you want to copy.

It’s highly recommended that this archive additionally be copied to an off-host location (e.g., S3 or a network drive), in the case of a complete loss of the host system or volume used to store backup archives.

<a id="configure-via-unattended-configuration"></a>

## Configure via Unattended Configuration

If you are managing Develocity using a GitOps or automated workflow, you can define the global settings using [Unattended Configuration](https://docs.gradle.com/develocity/2026.1/administration/unattended-configuration/). Depending on your deployment strategy, you can provide these settings either as Integrated configuration within your _values.yaml_ or as a **Standalone** configuration file.

```yaml
version: 15
systemPassword: "«hashed-system-password»"
backups:
  backupsToRetain: 2 (1)
  emailNotification: true (2)
  schedule:
    type: daily (3)
    timeOfDay: 01:00 (4)
```

1. Number of backup archives to retain before automatic deletion.
2. Enable email notifications for backup events.
3. Schedule type (daily, weekly, or cron).
4. Time of day to perform the backup (24-hour format).

<a id="deployment-templates"></a>

### Deployment Templates

Download the appropriate YAML template to begin your infrastructure configuration.

_For Develocity versions 2025.3 and prior, see the [2025.2 Administration Guide](https://docs.gradle.com/develocity/legacy/helm-admin/2025.2) or the [2025.3 Administration Manual](https://docs.gradle.com/develocity/2025.3/administration/admin-manual/)._

<table><tbody><tr><td class="hdlist1"><strong>Cluster Deployment</strong></td><td class="hdlist2">Example template for cluster orchestration. gradle-enterprise-config-schema-15.yaml SHA256 ASC ASC SHA256</td></tr><tr><td class="hdlist1"><strong>Standalone Deployment</strong></td><td class="hdlist2">Example template for standalone setup. gradle-standalone-config-schema-15.yaml | SHA256 | ASC | ASC SHA256</td></tr></tbody></table>

> [!IMPORTANT]
> Pre-deployment Checklist Backup: Export your current settings via Administration  Import/export before applying changes. Deployment: After updating your values.yaml, re-deploy using Helm. Impact: This triggers service restarts and may take several minutes to complete. See Unattended Configuration for details.

<a id="backups_user_managed_restoring"></a>

## Recovery and Migrations

If you need to restore a backup due to data loss or are migrating to a new host:

*   **In-Place Restore:** See the [Operations: Restoring a Backup](https://docs.gradle.com/develocity/2026.1/operations/recovery/#restore-inplace) guide.
    
*   **Database Migration:** If moving from embedded to user-managed, see the [Migration Guide](https://docs.gradle.com/develocity/2026.1/operations/migrations/).