Thursday, September 29, 2011

Different Recovery Catalog settings based on Grid Control user

I was doing some work at a client site configuring RMAN backups through grid control.  I had already done all the needed configuration for my various backup settings and had specified the recovery catalog (or so I thought).  I did a test backup and everything looked good.  Later on I scheduled the backup to run daily.  The next morning I saw that the backup had completed successfully.  Everything seemed to be working as expected until I looked at the log and saw:
"using target database control file instead of recovery catalog"

I was sure I had configured the DB to use a recovery catalog, so I looked at the log for my prior test run.  Sure enough the test run had connected to the recovery catalog.  I realized that the main difference was that when I scheduled the job I had done so as a generic user.  We typically do this for these types of scheduled jobs, so we don't have to worry about a backup not running due to someones account being terminated.  My hypothesis was that Grid Control must keep track of recovery catalog info on a per user basis.  Sure enough when I logged in as the generic user it no longer showed that the database would use the recovery catalog.

This can be further verified with the following query:
SELECT t.target_name, t.target_type, cat.*
  FROM mgmt_targets t,
       mgmt_rcvcat_repos cat
 WHERE t.target_guid = cat.target_guid

Here you can see that there is in fact an em_user field, so the recovery catalog information can vary by Grid Control user.  We are currently using Grid Control, I'm not sure if the behavior is any different on other versions.

No comments: