I’ve been rather critical of the way Cloud Control handles database backup jobs, as can be seen in these two previous posts.
- I love Cloud Control 12c, but the job management is really annoying!
- Oracle Cloud Control EMCLI : First Thoughts
Yesterday I found out I schedule database backups in Cloud Control the “wrong way”…
So typically, when I am sorting out a new database, I do something like this:
- If the host doesn’t already have an agent, push one out the to server.
- Discover the targets. For existing hosts, this may just be discovering a new database.
- Tell Cloud Control to used the RMAN catalog for backups. (Oracle Database > Availability > Backup & Recovery > Recovery Catalog Settings)
- Set the default location for the backups and any other stuff. (Oracle Database > Availability > Backup & Recovery > Backups Settings)
- Finally schedule the backup. (Oracle Database > Availability > Backup & Recovery > Schedule Backups…)
Notice how all the backup-related things come from the same location (Oracle Database > Availability > Backup & Recovery). Obvious right? Wrong!
So it turns out, if you schedule the backup using the (Oracle Database > Availability > Backup & Recovery > Schedule Backups…) screen, you do schedule a backup job, it works and it is visible in the (Enterprise > Job > Activity) screen, but it is not a “real” Cloud Control job. It is actually created using the job type of “Backup”, which is not a supported job type, rather than the job type “RMANScript”.
If you schedule a backup in this way, you can’t:
- use the job library.
- do a create-like of an existing job.
- edit most of the details about the job after it’s created, including the RMAN script.
- describe the job using EMCLI.
So what is the solution? Well, you do all the prep in the same way, but you don’t actually schedule the job using the (Oracle Database > Availability > Backup & Recovery > Schedule Backups…) screen. You do it directly from the (Enterprise > Job > Activity) screen. If you do it from here, then you get to pick the “RMANScript” job type and suddenly everything works much better and things seem a lot more consistent. Basically, you’ve created a “real” Cloud Control job.
So in my latest round of [enchancement requests | bug reports] I got the answer back from development that I was doing it wrong, which is good to know, and they want to close the SR. My response to that was, why do you let me do it the “wrong way”? Why does the (Oracle Database > Availability > Backup & Recovery > Schedule Backups…) screen not schedule a “real” Cloud Control job? It seems odd to me that you build a product that lets you do things inconsistently. It’s probably a throw back to the old DBConsole stuff, but that doesn’t make it any less annoying.
I’m going to recreate all my backup jobs to make them use the “RMANScript” job type, which will solve my EMCLI issues, but I really think this mess should get cleaned up. I wonder how many other people out there are not creating “real” Cloud Control jobs for their database backups?
I’m going add this blog post to my SR and see what the response is…