Oracle RAC - SQL for the DBID and the BACKUP_EXEC account
Oracle RAC Solution · Config document · referenced from Backup Exec server and RAC backup
<DB_ADMIN_PASSWORD> and <BACKUP_EXEC_DB_PASSWORD> are placeholders, and the DBID 1234567890 in the output is a made-up value of the right shape. The account created here ended up unused; do not copy its grants without a reason.The SQL*Plus statements that read the database identifier (needed for the name of the virtual node, RAC-clsopdb-1234567890) and create the database account BACKUP_EXEC with the privileges meant for Backup Exec.
| Item | Value |
|---|---|
| Run on | a node of the cluster, as oracle (su - oracle) |
| Tool | SQL*Plus, started with sqlplus / as sysdba; the notes start it three times, once before each connect |
| Connections | system for the query and the account, sys as SYSDBA for the last grant |
| Database version at the time | Oracle Database 11.2.0.4 Standard Edition, RAC |
The commands
The -- comment lines are mine; the statements are as typed, with the SQL> prompt of the notes left out.
-- [6.0] read the DBID connect system/<DB_ADMIN_PASSWORD>@clsopdb; select DBID, NAME from v$database; -- [6.1] create the account for Backup Exec and give it its roles connect system/<DB_ADMIN_PASSWORD>@clsopdb; CREATE USER BACKUP_EXEC IDENTIFIED BY <BACKUP_EXEC_DB_PASSWORD>; GRANT UNLIMITED TABLESPACE TO BACKUP_EXEC; GRANT AQ_ADMINISTRATOR_ROLE TO BACKUP_EXEC; GRANT CONNECT TO BACKUP_EXEC; ALTER USER BACKUP_EXEC DEFAULT ROLE ALL; ALTER USER BACKUP_EXEC DEFAULT TABLESPACE SYSTEM; disconnect -- [6.1] SYSDBA can only be granted by a SYSDBA session connect sys/<DB_ADMIN_PASSWORD>@clsopdb as sysdba; GRANT SYSDBA TO BACKUP_EXEC;
The output
The notes keep the answer Connected. after the first two connect statements and the result of the query; the second Connected. in the fence belongs to the connect of step [6.1]. No output of the CREATE, GRANT and ALTER statements is recorded, and none of the third connect.
output 7 lines
Connected.
DBID NAME
---------- ---------
1234567890 CLSDB
Connected.Reading it
| Statement | Effect |
|---|---|
select DBID, NAME from v$database | The identifier and the name of the database; Backup Exec builds the virtual node name from them |
GRANT UNLIMITED TABLESPACE | No quota limit in any tablespace |
GRANT AQ_ADMINISTRATOR_ROLE | The Advanced Queuing administrator role |
GRANT CONNECT | The right to create a session |
ALTER USER … DEFAULT ROLE ALL | All granted roles are active at logon |
ALTER USER … DEFAULT TABLESPACE SYSTEM | The account's default tablespace is SYSTEM |
GRANT SYSDBA | The administrative privilege, granted in a session of sys as SYSDBA |
Two things in it need a remark. The session connects to clsopdb and the query prints the database name CLSDB: the Backup Exec notes use clsopdb everywhere, the rest of the notes clsdb, and nothing in them says how the two relate. And the account was never used: Backup Exec did not work with clsopdb/BACKUP_EXEC as the database credential and sys was set instead, as told in Backup Exec server and RAC backup.
Checked against Backup Exec 25.1 and Oracle AI Database 26ai
| As built | Today |
|---|---|
DBID read from v$database for the name of the virtual node | Unchanged: the name is RAC-<database name>-<database ID> |
A dedicated account with GRANT SYSDBA | Backup Exec documents that for databases before 12c the user for the RMAN connection is SYS with SYSDBA, which is why this account could not be used on 11.2 |
| SYSDBA for backup | Since Oracle Database 12c the SYSBACKUP privilege, a subset of SYSDBA, is recommended for backup and recovery, granted to an account created for it; Backup Exec requires SYSBACKUP for 12c and later |
AQ_ADMINISTRATOR_ROLE, UNLIMITED TABLESPACE, DEFAULT TABLESPACE SYSTEM | Not asked for by the current Backup Exec guide |
On a current database the account would be created with GRANT SYSBACKUP and nothing else from this list.