Review backup, restore, and recovery operations for your databases.
Backup your databases in Oracle Database Appliance and use the restore and recover features to restore a database to another system or to recover database files.
It is important to create a backup recovery strategy to protect the databases in Oracle Database Appliance from data loss due to a physical problem with a disk that causes a failure of a read from or write to a disk file that is required to run the database, or due to user error. You can create a backup policy in the Web Console or from the command-line interface.
The following backup options are available:
Backup to an Oracle Fast Recovery Area (FRA) disk
Backup to Oracle Cloud Infrastructure Object Storage (Oracle Object Storage)
You cannot use the backup, restore, and recovery features with a third-party repository.
The backup feature enables you to create a backup configuration with your backup parameters, including backup level and location. For new and existing databases, you can create and attach a backup configuration to a database to perform a daily backup. Once a backup configuration is attached to a database, the dcs-agent
schedules daily automatic backups for the database. The default schedule is a level 0 backup every Sunday and a level 1 backup Monday through Saturday. You can edit or disable the schedule.
The dcs-agent
generates and saves a backup report for each backup. The backup report contains the metadata required to recover or restore a database.
Note:
You cannot backup databases that use Transparent Data Encryption (TDE).
Recovering a database in Oracle Database Appliance is a full RMAN database recovery. You can recover from a Backup Report, a point-in-time (PITR), a System Change Number (SCN), or from the latest backup.
Backup Configuration
The Backup Configuration defines the backup details. When you create a Backup Configuration, you define the destination for the database backups, either Disk or Cloud Object Storage, and you define the attributes such as the backup level and the recovery window.
If you use the Oracle Object Storage for backup and recovery, you must have an ObjectStore Resource ID.
You assign the backup configuration to the database when you create the database. You can attach a backup configuration to an existing database or edit a backup configuration.
Backup Levels
The backup configuration that you create defines the backup level:
Level 0: The backup captures all blocks in the datafile. By default level 0 backups occur every Sunday. A level 0 backup is a full backup and is used as the parent for a level 1 backup.
Level 1: The backup is an incremental backup that captures only those blocks that change between backups in each datafile. By default, a level 1 backup occurs daily, Monday through Saturday, and captures images of each block in a datafile that changed. Level 1 backups are differential backups. The backup includes blocks from the most recent previous level 1 or level 0 backup.
LongTerm: The backup is a long-term, or archival backup. Use LongTerm to create a backup that is all-inclusive and exempt from the backup retention policy. The backup is all-inclusive because every file needed to restore and recover the database is backed up to a single location. The backup is exempt from the retention policy that is defined in the recovery window. You must use Oracle Object Storage for long term backups.
The AutoScheduler creates a level 0 backup on Sunday and level 1 on the remaining days of the week. You can display a list of scheduled backups, edit your backup schedule, or disable a scheduled backup.
Backup to Disk
When you backup to disk, you are using the Oracle Fast Recovery Area (FRA) of the disk. FRA is a storage directory that allows backup and recovery operations on Oracle databases. The directory contains archived redo logs, backup pieces and copies, and the control file.
Advantages to backing up to disk are as follows:
Quick recovery from backups stored on disk
Ability to flashback the database
Automate management of recovery related files (like archived logs)
Note:
When you backup to disk, data is not encrypted and passwords are not allowed. In addition, backup to disk requires a lot of disk space (up to two to three times the size of the database).The following is a high-level overview of the workflow for backup and recovery when using a disk:
Create a backup configuration to define the backup location (disk), backup level, and recovery window.
Create a database and attach the backup configuration as part of creating the database. When the backup configuration is associated with a database, backups are automatically created.
Manage obsolete backups.
Recover the database from a backup on the disk.
Backup to Oracle Object Storage
Oracle Object Storage is a highly secure, scalable storage platform that enables you to safely and securely store or retrieve a database backup at any time. Data and the associated metadata are stored as an object in a logical container (bucket). Oracle Database Appliance creates a Backup Report and a unique ID to identify each backup.
Oracle Object Storage is tightly integrated with Oracle Cloud Infrastructure Identity and Access Management. The data, user-defined metadata associated with the data, and encryption keys are automatically encrypted using 256-bit Advanced Encryption Standard (AES- 256). The encryption keys are rotated frequently and cannot be disabled. By default, only authenticated users that have explicitly been granted access to specific resources can access data stored in Oracle Object Storage. Data is uploaded and downloaded over SSL endpoints using the HTTPS protocol.
When you backup to Oracle Object Storage, you are using your backup configuration and your Oracle ObjectStoreSwift credentials. The credentials are stored in an encrypted Oracle wallet. You can attach the credentials to one or more backup configurations.
Note:
Credentials are validated when you create the backup configuration that uses Oracle Object Storage. The credentials are not validated against the URL and tenancy.Advantages to using Oracle Object Storage are as follows:
Note:
Save the password that you use during backups in a safe location, you must provide the password during recovery operations.Quick recovery from backups. With the Oracle Object Storage, you can safely and securely use the Web Console to store or retrieve data directly from within the cloud platform, at any time.
Automate management of recovery related files (like archived logs)
Oracle Object Storage is not directly accessed by the operating system, instead it uses APIs to access the storage at the application level.
The following is a high-level overview of the workflow for backup and recovery when using Oracle Object Storage:
Create a ObjectStoreSwift object with your credentials.
Create a backup configuration to define the backup location (ObjectStore), resource id of ObjectStoreSwift, the container (bucket) name where you want to store backups, and the recovery window.
Create a database and attach the backup configuration as part of creating the database. When the backup configuration is associated with a database, backups are automatically created.
Manage obsolete backups.
Restore from backup. When you save your backups to Oracle Object Storage, you can restore the database to the same system or to a different system.
Recover the database from a backup on Oracle Object Storage.
Note:
Before you can use this backup option, you must create an Oracle Cloud Infrastructure Object Storage account. When you create the account, you define the account credentials, end point URL, and bucket. Go to the Oracle Store and sign up for Oracle Cloud Infrastructure Object Storage.Backup Reports
A backup report is generated for each backup and is similar to, but does not replace, a recovery catalog. The report contains the Oracle Database Appliance information and metadata needed to restore or recover a database. The Backup Report is designed to keep track of all of the information required to restore or recover a database.
The following is an example of a level 1 backup report:
{ "id" : "2d82460c-d648-4e75-8c7d-72cc90bc442a", "dbResId" : "b5fc646e-01a6-4c8b-8286-7633346c4329", "tag" : null, "dbId" : "2717054291", "dbName" : "HRDbO", "dbUniqueName" : "HRDbOu", "backupType" : "REGULAR-L1", "keepDays" : null, "backupLocation" : "https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/dbaasimage/backupbucket", "cfBackupHandle" : "c-2717054291-20171108-04", "spfBackupHandle" : "c-2717054291-20171108-04", "pitrTimeStamp" : "November 08, 2017 12:43:14 PM UTC", "pitrSCN" : "1175058", "resetLogsTimeStamp" : "November 08, 2017 09:55:34 AM UTC", "resetLogsSCN" : "1112268", "oraHomeVersion" : "12.2.0.1.170814 (26723265, 26609817)", "sqlPatches" : "25811364,26609817", "backupLogLoc" : "https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/dbaasimage/backupbucket/scaoda702c1n1/rmanlog/HRDbOu/2717054291/2017-11-08/rman_backup_2017-11-08_12-42-41.0545.log", "tdeWalletLoc" : null, "dbConfigLoc" : "https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/dbaasimage/backupbucket/scaoda702c1n1/dbconfig/HRDbOu/2717054291/2017-11-08/DBCONFIG_TAG20171108T124407_2017-11-08_12-44-07.0533.tar.gz", "name" : "Backup_Report_HRDbO", "createTime" : "November 08, 2017 12:42:08 PM UTC", "state" : { "status" : "CONFIGURED" }, "updatedTime" : "November 08, 2017 12:44:12 PM UTC", "backupReportLogDetail" : "https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/dbaasimage/backupbucket/scaoda702c1n1/rmandetaillogreport/HRDbOu/2717054291/2017-11-08/rman_list_backup_detail_2017-11-08_12-44-04.0362.log", "dbInfo" : { "dbClass" : "OLTP", "dbType" : "RAC", "dbShape" : "odb1", "dbEdition" : "EE", "dbStorage" : "ASM" }, "dbDataSize" : "1542M", "dbRedoSize" : "16403M" }
About Recovery Options
The recovery in Oracle Database Appliance always performs a full database restore or recover. The recovery options are LATEST, PITR, SCN, and BackupReport.
The following types of recovery are available:
LATEST: Performs a complete recovery (valid backups and all required archived logs and online redo logs must be available)
PITR: Point-in-Time Recovery that performs a recovery to a specified timestamp within the current incarnation of database
SCN: SCN-based recovery that performs a recovery is an incomplete recovery to a specified SCN within the current incarnation of database.
BackupReport: Performs a recovery based on the Backup Report timestamp. The BackupReport option is similar to PITR, except that the recovery uses the Backup Report timestamp instead of a specified timestamp.
Point-in-Time Database Recovery
Point-in-Time Recovery (PITR) recovers the database to a specific point-in-time. You can use a timestamp or a backup report for this type of recovery.
A point-in-time recovery is often used for the following situations:
A user error or corruption removes needed data or introduces corrupted data. For example, someone erroneously deletes or updates the contents of one or more tables, drops database objects that are still needed during an update to an application, or runs a large batch update that fails midway.
A database upgrade fails.
System Change Number Recovery
A system change number (SCN) is a stamp that defines a committed version of a database at a point in time. Oracle assigns every committed transaction a unique SCN. You can recover a database to the latest time or to an SCN.
The database is restored from backups created before the target time, and then applies incremental backups and logs to re-create all changes between the time of the data file backups and the end point of recovery. When the end point is specified as an SCN, the database applies the redo logs and stops after each redo thread or the specified SCN, whichever occurs first. When the end point is specified as a time, the database internally determines a suitable SCN for the specified time and then recovers to this SCN.
SCN is a primary mechanism to maintain data consistency in Oracle database. With each execution, there is an increase in the count of the SCN. The following are some examples of areas that use SCN:
Redo records. Every redo record has an SCN version of the redo record in the redo header (redo records can have non-unique SCN). Given redo records from two threads (as in the case of RAC), recovery will order them in SCN order, essentially maintaining a strict sequential order.
Data block. Every data block has block SCN (block version). In addition to that, a change vector in a redo record also has expected block SCN. This means that a change vector can be applied to one and only version of the block. Code checks if the target SCN in a change vector is matching with the block SCN before applying the redo record. If there is a mismatch, corruption errors are thrown.
Read consistency. Every query has query environment which includes an SCN at the start of the query. A session can see the transactional changes only if that transaction commit SCN is lower then the query environment SCN.
Commit. Every commit generates an SCN (commit SCN) that marks a transaction boundary. Group commits are possible too.
Obsolete Database Backups
It is important to remove older backups once they become obsolete. The type of backup and the recovery window that you define in the database backup configuration determines when obsolete database backups are deleted.
For level 0 and level 1 backups, run the command odacli delete-backup
for a given Database Resource Identifier to delete obsolete backups based on the defined recovery window.
For Longterm backups, create a JSON input file and use the command odacli delete-backup
for a given Backup Report to delete the backups from Oracle Object Storage.
Disk: 1-14 days
Object Storage: 1-31 days
Related Topics
Parent topic: Backup, Restore and Recover Databases
Use the Web Console to create a policy to backup a database to the Oracle Fast Recovery Area (FRA) of a disk or to the Object Store.
dcs-agent
schedules daily automatic backups for the database.Parent topic: Backup, Restore and Recover Databases
Use the Web Console to update the recovery window or change the crosscheck option for a database backup policy.
Parent topic: Backup, Restore and Recover Databases
Apply a backup policy to a database, create a manual backup, update a database backup schedule, or update an archive log backup.
odacli create-backup
for a specified Database Resource ID.Parent topic: Backup, Restore and Recover Databases
Each database has a log of available backups. The log lists the type, location, and date and timestamp of the backup.
Parent topic: Backup, Restore and Recover Databases
Attach a backup configuration file to a database to define the database backup attributes and destination.
Parent topic: Backup, Restore and Recover Databases
Use the Web Console to restore a database from one appliance to another appliance, or to the same appliance when the source database is deleted.
After you backup a database, you can restore it. When you restore a database, environment and validation checks and setup tasks are performed. Restoring a database requires a number of tasks and configuration details, such as creating database storage, Oracle Home, recreating the control file, registering the database, and establishing RMAN restore and recovery. An Oracle Database Appliance backup report is generated for each backup and contains the metadata required to restore a database. The report is designed to help you to quickly and efficiently restore a database.
Obtain Object Store Credentials for the host.
Create a backup policy using the object store credentials as the backup destination.
Attach the backup policy to the database that you want to backup.
Create a manual backup of the database and save the file.
Parent topic: Backup, Restore and Recover Databases
Recover the database to the system using a Backup Report, point-in-time recovery (PITR), a system change number (SCN), or from the latest backup time.
Recovering a database in Oracle Database Appliance is a full RMAN database recovery.
Recovering from a backup report requires JSON input for the backup report.
Parent topic: Backup, Restore and Recover Databases
Delete older, obsolete level 0, level 1 and long term backups.
For level 0 and level 1 backups, the recovery window defined in the Backup Configuration determines when the backup is obsolete. The ranges are as follows:
Backup to disk: between 1 and 14 days
Backup to the Oracle Object Storage: between 1 and 31 days
For Long Term backups to the Oracle Object Storage, view the Backup Report for a database to determine when the backup is obsolete. To delete Long Term Backup, the Database Resource ID or Database name and the Backup Report are required.
Parent topic: Backup, Restore and Recover Databases
Use the Web Console to delete a database backup policy.
Parent topic: Backup, Restore and Recover Databases
Use the command-line interface to create a database backup policy.
Parent topic: Backup, Restore and Recover Databases
Use the command-line interface to create a policy to backup a database to the Oracle Fast Recovery Area (FRA) of a disk.
You can create a backup configuration using the Web Console or the command-line interface. Most of the backup and recovery commands enable you to provide either a resource name or resource ID to identify the database.
Backup to disk requires a lot of disk space (up to two to three times the size of the database).
Related Topics
Parent topic: Using the CLI to Backup, Restore, and Recover
Create a backup configuration to backup a database to Oracle Cloud Infrastructure Object Storage.
Before you can backup to Oracle Object Storage, you must sign up for an Oracle Cloud Infrastructure Object Storage account and know your Oracle Object Storage credentials. When you create an Oracle ObjectStoreSwift object, the command creates and stores the credential details in the system and stores the password in an encrypted Oracle wallet. The Oracle wallet contains your tenant name, user name, and defines the end point URL.
Go to the Oracle Store to sign up for Oracle Cloud Infrastructure Object Storage.
Related Topics
Parent topic: Using the CLI to Backup, Restore, and Recover
Create a level 0, level 1, or LongTerm database backup with the command-line interface.
You can create a database backup in the Web Console or with the command-line interface. When you attach a backup configuration file to a database, the dcs-agent
automatically schedules daily backups for the database. The day and time are based on the Oracle Database Appliance time zone. The AutoSchedule triggers a level 0 Backup every Sunday and a level 1 the other 6 days of the week. Use the command odacli update-schedule
to disable or change the scheduled backup time.
To create a Long Term database backup, or a level 0 or level 1 backup outside of the automatic backups, use the command odacli create-backup
.
Note:
To recover a database, you can use disk or Oracle Object Storage and a level 0 backup report. To restore a database to another system, you must have a Long Term database backup in Oracle Object Storage.Parent topic: Using the CLI to Backup, Restore, and Recover
Restore a database to a system from Oracle Object Storage using a Backup Report and the command-line interface.
When you restore a database, environment and validation checks and setup tasks are performed. Restoring a database requires a number of tasks and configuration details, such as creating database storage, Oracle Home, recreating the control file, registering the database, and establishing RMAN restore and recovery. An Oracle Database Appliance backup report is generated for each backup and contains the metadata required to restore a database. The report is designed to help you to quickly and efficiently restore a database.
You can restore a database from one appliance to another appliance, or to the same appliance when the source database is deleted:
To restore to a different system, copy the backup report generated by the command odacli create-backup
to the other machine's \bin
folder and use the command odacli irestore-database
with the backup report.
To restore to the same system, delete the source database and use the backup report generated by the command odacli create-backup
.
Related Topics
Parent topic: Using the CLI to Backup, Restore, and Recover