ApsaraDB RDS for PostgreSQL supports restoring individual databases and tables. You can restore specified databases from a backup set or to a specific point in time to the source instance or another existing instance. This feature is ideal for quickly correcting operational errors and analyzing historical data.
Features
|
Item |
Description |
|
Restore scope |
Specified databases within an instance. Note
The restorable time range depends on the retention period for data backups and log backups, and when you enable the individual database and table restoration feature. The maximum retention period for data backups and log backups is 730 days. You can call the DescribeLocalAvailableRecoveryTime API operation to query the restorable time range for an RDS instance. |
|
Restore speed |
Approximately 20 MB/s. The actual speed varies based on the data volume. |
|
Restore method |
You can restore data from a backup set or to a specific point in time. Note
|
Prerequisites
-
Your ApsaraDB RDS for PostgreSQL instance must meet the following requirements:
-
Major engine version: 10 to 17
-
Edition: RDS Basic Edition, RDS High-availability Edition, or RDS Cluster Edition
-
Storage type: ESSD or high-performance cloud disk
-
Billing type: pay-as-you-go or subscription (Serverless instances are not supported.)
NoteYou can view this information on the Basic Information page of the instance.
-
-
If your instance was created before October 10, 2022 (an old-architecture instance), you must complete service-linked role (SLR) authorization and update the minor engine version to the latest version to restore individual databases and tables.
-
The individual database and table restoration feature is enabled. For more information, see Enable individual database and table restoration.
Billing
This feature is in public preview and is free of charge.
Limitations
-
You cannot restore data to a new instance.
-
Only specified databases can be restored. You cannot restore specified tables.
-
You cannot restore a view.
-
You cannot restore databases whose names start with
postgres,rdsadmin, ortemplate.
Enable individual database and table restoration
Before you can use the feature to restore individual databases and tables, you must first enable it by following the steps in this section. Enabling this feature does not affect your services.
Go to the Instances page. In the top navigation bar, select the region in which the RDS instance resides. Then, find the RDS instance and click the ID of the instance.
-
In the left-side navigation pane, click Backup and Restoration.
-
On the Backup and Restoration page, click the Backup Strategy tab.
-
Click Edit next to Backup Settings and enable Restore Individual Database/Table.
-
Click Save.
Procedure
Go to the Instances page. In the top navigation bar, select the region in which the RDS instance resides. Then, find the RDS instance and click the ID of the instance.
-
In the left-side navigation pane, click Backup and Restoration and then click Database/Table Restoration.
NoteIf the Database/Table Restoration button is not visible in the console, verify that all prerequisites are met.
-
Configure the restoration destination and method.
Parameter
Description
Restore To
Data can be restored to:
-
The source instance
-
Another instance that is in the same region and has the same major engine version
Restoration Speed
Standard. This value is fixed and cannot be changed.
Restoration Method
-
By Backup Set
-
By Time: The By Time option is displayed only when log backup is enabled for the instance. The system first restores the full backup data, and then restores the incremental log backup data. You can select any point in time within the log backup retention period. To enable log backup or modify the log backup retention period, see Set automatic backup.
For example, if the retention period for both data backups and log backups is 7 days, you can restore data from any point in time within the last 7 days. Backup sets older than 7 days are automatically deleted and cannot be used for restoration.
-
-
Select the databases that you want to restore, specify new names for the restored databases as needed, and then click OK.
Note-
You can select up to 50 databases at a time.
-
The restored database name cannot be the same as the source database name. By default, the system appends
_backupto the name of each restored database. You can also change these names. -
Confirm the total size of the selected databases displayed at the bottom of the page and ensure the destination instance has sufficient storage space.
-
-
After the databases are restored, you can view them on the Databases page of the destination instance.
FAQ
-
Q: When I try to restore a database in the ApsaraDB RDS console, I receive the error message "Operation failed. This operation is not supported for the current instance status." What causes this error and how can I resolve it?
A: Tasks in the ApsaraDB RDS console run sequentially. This error occurs if you try to start a new restoration task while another restoration or other task is in progress. Wait for the current task to complete before you start the next one.
-
Q: What should I do if a database is restored but appears empty?
A: This can happen if the database was empty at the point in time you selected for restoration. Verify that the database contained data at the selected time, and then try the restoration again using a different point in time if necessary.
-
Q: Are there other ways to restore individual databases or tables for an ApsaraDB RDS instance?
A: You can also use Database Backup Service (DBS), which allows you to back up and restore cloud databases and self-managed databases on ECS instances. DBS also lets you download backup sets to a local machine. For other methods to restore individual databases and tables, see Database- or table-level restoration.
Related operations
-
To restore all data, see Restore the data of an ApsaraDB RDS for PostgreSQL instance.
-
To restore a specific table from a logical backup, see Use pg_restore to restore data from a logical backup file.
-
To restore backup data of an ApsaraDB RDS for PostgreSQL instance to a self-managed PostgreSQL database, see Restore data from a CSV or SQL file of an ApsaraDB RDS for PostgreSQL instance to a self-managed database.
-
You can also perform related operations by using the API. For more information, see DescribeLocalAvailableRecoveryTime.