# Backups

> **📝 Note**: Operator 1.2.0 inadvertently removed two optional backup-related command-line parameters: `backup-s3-endpoint` and `backup-compatibility-mode`. You may remedy their absence by either:- Upgrading to Operator 1.2.1, which contains these parameters
> - Using CR spec `backupSpec.s3Endpoint` and `backupSpec.compatibilityMode` to specify their values

## Backup Configurations

You may specify backup details via the `backupSpec` in the CR, using the fields following this example:.

```yaml
  backupSpec:
    CloudServiceProvider: AWS
    backupImage: gcr.io/singlestore-public/cellscripts:20230424161715-64bdc8ff
    bucketName: 29fce172-3e50-41d9-9440-bf378475cc1b
    s3Endpoint: http://10.43.241.252:8005
    s3Region: us-west-1
    schedule: 13 20 * * *
    secretName: backup-credentials
```

Where:

* `CloudServiceProvider`: Use AWS for S3-compatible storage.
* `backupImage`: When unspecified, the Operator will use a default image.
* `bucketName`: Name of the bucket in which to store backups of user databases.
* `compatibilityMode`: Primarily for GCS, compatibility mode for backups of user databases. Refer to [BACKUP DATABASE](https://docs.singlestore.com/db/v9.1/reference/sql-reference/operational-commands/backup-database.md) for more information.
* `objectMetaOverrides`: Label and Annotation subfields allow for overriding the labels and annotations of the pods of the cronjob
* `s3Endpoint`: Location of S3-compatible endpoint to use for backups of user databases.
* `s3Region`: Name of the AWS S3 region in which the target bucket resides.
* `schedule`: Default schedule for initial full backups of user databases, in `cron` format.

  If `scheduleIncremental` is specified, the scheduled job will perform a backup using `BACKUP DATABASE ... WITH INIT ...`, otherwise, it will perform a plain `BACKUP DATABASE` without using the `WITH INIT` option.
* `scheduleIncremental`: Default schedule for incremental backups of user databases, in `cron` format.

  If this is configured, it will perform an incremental backup using `BACKUP DATABASE ... WITH DIFFERENTIAL ...` option if there is already a backup created by using `WITH INIT` option, otherwise the first time the incremental backup is run, it will perform a backup using `WITH INIT` option.

  You may define the `schedule` and/or `scheduleIncremental` using the following [`cron` job scheduling format](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules):
  | Unit   | Description  | Value   |
  | ------ | ------------ | ------- |
  | `MIN`  | Minute field | 0 to 59 |
  | `HOUR` | Hour field   | 0 to 23 |
  | `DOM`  | Day of Month | 1 to 31 |
  | `MON`  | Month field  | 1 to 12 |
  | `DOW`  | Day of Week  | 0 to 6  |
  For example:
  ```
                      +---------------- MIN
                      |  +------------- HOUR
                      |  |  +---------- DOM
                      |  |  | +-------- MON
                      |  |  | | +------ DOW
                      |  |  | | |
           schedule: 13 20  * * *
  ```
  Where:

  * `deadlineSeconds`: Default deadline in seconds in which a full backup job has to finish before it is terminated. Defaults to 3600 seconds if not specified.
  * `deadlineSecondsIncremental`: Default deadline in seconds in which an incremental backup has to finish before it is terminated. Defaults to 3600 seconds if not specified. It is suggested to make this value the same value as `deadlineSeconds`.
* `secretName`: Name of the Secret containing credentials for use in S3 backup of user databases.

***

Modified at: April 9, 2026

Source: [/db/v9.1/reference/singlestore-operator-reference/backups/](https://docs.singlestore.com/db/v9.1/reference/singlestore-operator-reference/backups/)

(An index of the documentation is available at /llms.txt)
