Database Backup (DBS) allows you to back up and restore Alibaba Cloud databases such as ApsaraDB RDS for MySQL, ApsaraDB RDS for SQL Server, and ApsaraDB RDS for PostgreSQL databases, self-managed databases hosted on Elastic Compute Service (ECS) instances, on-premises databases, and databases hosted on third-party cloud services. This topic describes how to use DBS to back up and restore ECS-hosted self-managed MySQL databases to meet disaster recovery and security requirements. DBS provides features such as real-time backup, quick restoration, geo-disaster recovery, and long-term archiving. DBS helps you eliminate the security risks that may arise from data loss, accidental deletion, ransomware, and hacker attacks.
Scenarios
You forgot to back up your business data.
You want to use a cost-effective disaster recovery scheme for your ECS-hosted databases.
Your database encountered a hacker attack and was deleted. You want to restore the data to the status of yesterday.
The database server encountered a Trojan horse attack. A large amount of data was lost, and the service website cannot be accessed.
You deleted the data files of your database by mistake. As a result, you cannot start mysqld.
Your colleague replaced your online database with a test database. However, the online database has not been backed up.
For more information about the database engine versions and database objects that are supported by DBS, the granularity of backup and restoration in DBS, and the features that are supported by DBS for different types of databases, see Database engines and features.
Backup and restoration solutions
Usage of ECS instances | Solution |
Act as database servers | Use DBS backup schedules |
Act as application servers | Use ECS snapshots |
Act as both database servers and application servers | Use DBS backup schedules and ECS snapshots |
For more information about how to activate the ECS Snapshot service, see Activate ECS Snapshot.
Benefits of DBS
Benefit | Description |
Real-time backup | DBS obtains transaction logs from the memory of a database in real time and supports a recovery point objective (RPO) accurate to seconds. |
Quick restoration | DBS allows you to restore the data of a single table. This greatly reduces the recovery time objective (RTO). |
Restoration to a point in time accurate to seconds | DBS allows you to restore a database to a point in time accurate to seconds. You can restore a database to the status of the last second instead of the status of yesterday. |
Low storage costs | DBS provides a data compression ratio up to 30% to reduce storage costs and automatically archives backup data to cost-effective storage services. |
Backup sets available to be queried | DBS allows you to query the data of backup sets. You can directly execute SQL statements to query the data, without restoring the data to databases. |
Remote backup and restoration | DBS supports remote backup where the distance between the backup source and backup destination is more than 2,000 kilometers. After the data is backed up, you can use DBS to restore the data to a database in the current region or another region. |
Handling of table name conflicts | During restoration tasks, DBS automatically renames the database or table that shares the same name with a database or table in the destination database. You can also manually rename databases or tables when you configure restoration tasks. |
Quick restoration to ApsaraDB for RDS instances | DBS can automatically create an ApsaraDB for RDS instance with the appropriate specifications and storage space based on the metadata of a backup set. |
Step 1: Create a backup schedule
Go to the DBS buy page to create a backup schedule. For more information, see Create a backup schedule.
Step 2: Configure the backup schedule
Prerequisites
A backup gateway is installed on the ECS instance that hosts the self-managed database in physical backup scenarios. For more information, see Install a backup gateway.
Procedure
Log on to the Database Backup (DBS) console.
In the left-side navigation pane, click Backup Schedules. In the top navigation bar, select a region.
On the Backup Schedules page, find the ID of the backup schedule that you want to configure and click Configure Backup Schedule in the Actions column.
In the Configure Backup Source and Destination step of the Configure Backup Schedule wizard, configure the backup source and destination, and click Next in the lower-right corner of the page.
Table 1. Parameters
Section
Parameter
Description
N/A
Schedule Name
The name of the backup schedule. DBS automatically generates a backup schedule name. We recommend that you enter a descriptive name that is easy to identify. Backup schedule names do not need to be unique.
Backup Source Information
Backup Mode
The method that is used to back up data. The default value of this parameter is the backup method that you selected when you purchased the backup schedule. In this example, Logical Backup is displayed.
Database Location
The location of the database that you want to back up. Select ECS-Hosted Database.
Instance Region
The region in which the ECS instance that hosts the database resides.
ECS Instance ID
The ID of the ECS instance on which the database that you want to back up is hosted.
Port Number
The port used to connect to the database that you want to back up.
Database Account
The username of the account that is used to connect to the database that you want to back up. The account must have permissions to back up the database. For more information, see Account permissions.
Password
The password of the account that is used to connect to the database that you want to back up.
After you enter the username and password of the database account, click Test Connection next to the password to check whether the information about the database that you want to back up is valid. If the specified parameters are valid, the Test Passed message is displayed. If the Test Failed message is displayed, click Check next to Test Failed. Modify the information about the database that you want to back up based on the check results.
Compliance warranty regarding cross-border data transfers
Read and agree to the compliance commitment by selecting the check box.
Backup Destination Information
Backup Storage Type
The type of storage that is used to store the backup data. Valid values:
DBS Storage (recommended): Backup data is stored in DBS without the need to create an Object Storage Service (OSS) bucket. You are charged based on the volume of your data that is stored in DBS. For more information about the billing method, see Storage fees.
OSS For User: You must create a bucket in the OSS console in advance. For more information, see Create buckets.
NoteIn this example, DBS Storage (recommended) is selected. If you select OSS For User, you must configure the OSS Bucket Name parameter. Only the Standard storage class is supported.
If the volume of data to be backed up is large, we recommend that you purchase subscription storage plans to offset fees. For more information, see Use storage plans. Storage plans are more cost-efficient than the pay-as-you-go billing method.
Storage Encryption
The method that is used to encrypt the stored data. Valid values:
Encrypted: recommended. DBS uses AES-256 to encrypt data.
The server-side encryption feature is used in OSS. When you upload an object to OSS, OSS encrypts and stores the object. When you download the encrypted object from OSS, OSS decrypts the object and returns the decrypted object to you. For more information, see Server-side encryption.
Non-encrypted: The backup data is not encrypted.
OSS Bucket Name
The name of the OSS bucket that you want to use to store data.
This parameter is displayed only if you set the Backup Storage Type parameter to OSS For User.
In the Edit Backup Objects step, find the database or table that you want to back up and add it to the Selected section. Then, click Next.
NoteIf you selected Logical Backup when you purchased a backup schedule, DBS allows you to specify the databases and tables to be backed up during full backups. You can back up a single table, a single database, multiple databases, or an entire database instance for some types of databases during full backups. DBS supports incremental backups only for some types of databases. By default, all the incremental data is backed up during incremental backups.
You can click Select All in the lower-left corner of the Available section to back up the entire database. The database objects that can be backed up and the backup granularity vary based on the database type. For more information, see Database engines and features.
By default, a backup schedule cannot be used to back up a database that is created after the backup schedule is configured. To back up the database, you can add the database to the backup schedule on the Edit Backup Objects page of the backup schedule. For more information, see Modify backup objects.
If you selected Physical Backup when you purchased a backup schedule, you must back up an entire database instance.
In the Configure Backup Time step, configure the parameters that are described in the following table. Then, click Next in the lower-right corner of the page.
Parameter
Description
Full-scale Backup Frequency
The frequency of the backup schedule. Valid values: Periodic Backup and Single Backup.
NoteIn scenarios in which incremental data needs to be restored, we recommend that you select Periodic Backup and perform a full backup at least once a week. Otherwise, a large number of binary logs must be replayed during restoration. This process is prone to errors and may result in a prolonged recovery time objective (RTO).
Full Data Backup Recurrence
The days of the week on which DBS runs the backup schedule. This parameter is required if the Full-scale Backup Frequency parameter is set to Periodic Backup. Select at least one day of the week.
Started At
The point in time at which DBS starts a full backup. This parameter is required if the Full-scale Backup Frequency parameter is set to Periodic Backup. We recommend that you specify a point in time during off-peak hours. Example: 01:00.
NoteIf a previous full data backup is not complete at the start time of the next backup, DBS skips the next backup.
Incremental Backup
Specifies whether to enable incremental backup. If you enable incremental backup, make sure that the binary logging feature is enabled for the database that you want to back up.
NoteThis parameter is displayed only if you set the Full-scale Backup Frequency parameter to Periodic Backup.
By default, the binary logging feature is enabled for an ApsaraDB RDS for MySQL instance. If you use a self-managed database, you must manually enable the binary logging feature.
Maximum Concurrent Threads for Full Data Backup
The maximum number of concurrent threads that are available for a full backup. You can configure this parameter to adjust the backup speed. For example, you can reduce the number of backup threads to minimize impacts on the database.
The maximum number of actual concurrent threads varies based on backup schedule specifications. For more information, see How do I change the maximum backup speed?
Backup network speed limit
The limit on the network bandwidth. Unit: MB/s. You can set the limit based on your business requirements. The default value 0 indicates that the network bandwidth is unlimited.
NoteThis parameter is displayed only when you configure a backup schedule for a MySQL database.
In the Edit Lifecycle step, configure the lifecycle for full backup data in the Configure Full Data Backup Lifecycle section.
NoteIf you set the Incremental Backup parameter to Enable in Step 6, you must configure the lifecycle for incremental backup data.
After the configurations are complete, click Precheck in the lower-right corner of the page.
If the Precheck Passed message appears, click Start Task.
NoteIf the state of the backup schedule changes to Running, the backup schedule takes effect.
If an exception or error occurs when you start the backup schedule, troubleshoot the exception or error at the earliest opportunity. For more information, see How do I fix errors for an abnormal backup schedule in DBS? If your issue persists after you use the solution that is provided in the preceding topic, contact technical support in the DBS DingTalk group (ID: 35585947).
What to do next
After a database is backed up, you can view the backup schedule or restore the database. For more information, see View a backup schedule or Restore a database.
You can call the CreateBackupPlan operation to create a backup schedule. You can also call the CreateAndStartBackupPlan operation to create, configure, and start a backup schedule. For more information, see CreateBackupPlan or CreateAndStartBackupPlan.
For more information about how to modify the backup source, backup objects, or backup policy such as the backup time and backup set retention time of a backup schedule, see Manage a backup plan.
For more information about backup and restoration scenarios, such as backup to the cloud, geo-redundancy, backup security, and quick restoration, see Common scenarios.
For more information about fees that may be subsequently incurred by a backup schedule, see Billing FAQ.
To reduce costs, you can pause a backup schedule that you do not need. For more information, see Pause or start a backup schedule.