AWS – Creating a one-time RDS database backup

How to install Ubuntu Server 19.10

We’re now going to show you how to make a one-off snapshot of your database. You might opt to do this if you have a specific requirement around keeping a point-in-time backup of your DB. You might also want to take a snapshot to create a new working copy of your dataset.

Getting ready

To proceed, you’re going to need the following:

  • The identifier for the RDS instance you wish to back up
  • A unique identifier that you’d like to assign to this snapshot

The snapshot identifier has some constraints:

  • It needs to start with a letter.
  • It must not be longer than 255 characters.
If your primary database isn’t running in a multi-AZ configuration, then be aware that creating a snapshot will cause an outage. In a multi-AZ configuration, the snapshot is taken on the standby instance so no outage occurs.

How to do it…

Type the following AWS CLI command to initiate the creation of a snapshot:

aws rds create-db-snapshot \
  --db-instance-identifier <primary-rds-id> \
  --db-snapshot-identifier <unique-id-for-snapshot>

You’ll need to wait for a few minutes for the snapshot to complete before you can use it.

How it works…

A snapshot is an image of the entire storage volume for your database, not just a single instance as you get with a native database backup. If you have a multi-AZ setup, as described in a previous recipe, there is no I/O cost associated with the creation of the snapshot. Snapshots are stored in S3, so you get the built-in durability of S3 buckets for your snapshot. You give the snapshot a unique identifier so that you can reference it if you need to restore the snapshot later.

Comments are closed.