Recently, I encountered a scenario with an Oracle ExaCS database where automatic and manual backups consistently failed.
[STATE -> Failure
[ACTION -> Create Database Backup
[LOG -> DBAAS-10222 : Backup destination is not provided.
[LOG -> DBAAS-10203 : Input parameter ‘ossPwd’ can not be null.
The system’s master configuration, when retrieved using bkup_api get config, explicitly showed backupDestination=none. This was the immediate culprit.
Attempted Fix: We tried to update a temporary configuration file with backupDestination=oss (as we intended to use Object Storage) and bkup_api set config, then we failed another error related ossPwd.
Generate configure file from existing database or download configure file OCI bucket and loaded configuration file into the database.
bkup_oss=yes
bkup_oss_user=svc_deeds_backup
bkup_oss_passwd=#####
Get the Current Master Configuration into a File:
/var/opt/oracle/bkup_api/bkup_api get config --file=/tmp/master_config_disk.cfg --dbname=dbadeeds
Load the configuration into database, like schedule, rman settings, dest, if you have zfs add hostname and password in it.
dbaascli database backup --dbname dbadeeds --configure --configFile /tmp/master_config_disk.cfg
may be will ask you to change cfg to chmod 0600
Start Level0 Backup.
dbaascli database backup --dbname dbadeeds--start --level0
it will generate UUID
To check the status of backup
dbaascli database backup --dbname dbadeeds--status --uuid ****
useful command to have handy!
Using dbaascli
1. Log in to node 1 of the cluster
2. Sudo to the root user (sudo su -)
3. Use dbaascli database backup –-help to see all options
dbaascli --help, dbaascli database backup --help
dbaascli database backup --dbName mdb --start --tag mytag123
dbaascli database backup --dbName mdb --start --level0
dbaascli database backup --dbName mdb --start --level1
dbaascli database backup --dbName mdb --start --archival
dbaascli database backup --dbName mdb --list
dbaascli database backup --dbName mdb --status --uuid 5c40bd8892af11ed99a3020017004654
dbaascli database backup --dbname mdb --delete --backupTag mytag123
dbaascli database backup --dbname mdb --getSchedules
The Realization: Configuration Persistence is Key
It became clear that simply trying to modify temporary config files or running commands that should pick up the settings wasn’t working. The core issue was twofold:
- Improper Use of
bkup: Attempting to run the low-levelbkupbinary directly with the high-level configuration parameters resulted in a cascade of “WARN : Parameter … is not a valid parameter.” - Unpersisted Credentials: Even if the
backupDestinationwas conceptually set, theossAuthTokenwas not being securely stored or validated by the system. - Don’t Generate new token for using existing service account user to get ossAuthToken
Leave a comment