In a cluster environment , rman works clusterwide. I mean; when we allocate channel automatically, rman uses all of the cluster nodes to spread the work across the nodes in the clusters. For example; In a two node cluster, some channels are allocated from the first node and the others are allocated from the second.
It seems , Rman uses plsql to do this work.. It uses DBMS_BACKUP_RESTORE package.
When we the trace such a rman session we see the following;
DBGPLSQL: 30 TEXTNOD = devtype := sys.dbms_backup_restore.deviceAllocate( ident => chid,
DBGPLSQL: 31 TEXTNOD = node => node,
DBGPLSQL: 32 PRMVAL = type=>'SBT_TAPE',dupcnt=>1
DBGPLSQL: 33 TEXTNOD = );
As you see above, even for tape channel rman uses database plsql to allocate channels..
So the thing we need to keep in my mind is that, when we have a tape device or a tape agent configured to run on only one of the cluster, our rman backups can encounter errors like the following;
RMAN-10035: exception raised in RPC:
ORA-19624: Operation failed, retry possible
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
It can be easily seen that rman cannot allocate the sbt_tape type channel here, but supposing that we already configured our libraries to connect the sbt device, these errors shoud not be seen, because we use node 1 to connect to database using rman.
On the other hand, the reason for these errors is actually the clusterwide parallelism ...
Rman connects to the target instance in a load balanced manner.. Rman creates its sessions and allocates channels through these session directly from the database using plsql. So if rman goes to node 2 because of the load balancing, and if we didnt configured our sbt type libraries/agent, rman normally produces above errors..
So in order to prevent these type of erros
* we should allocate channels manually from the node that configured to access our tape libraries
or
* we should configure all of the nodes in the cluster to be able to allocate necessary rman channels.
To create channels only from a specific node, we should create rman channels as follows;
CONFIGURE CHANNEL 1.. CONNECT 'user1/pwd1@node1';
It seems , Rman uses plsql to do this work.. It uses DBMS_BACKUP_RESTORE package.
When we the trace such a rman session we see the following;
DBGPLSQL: 30 TEXTNOD = devtype := sys.dbms_backup_restore.deviceAllocate( ident => chid,
DBGPLSQL: 31 TEXTNOD = node => node,
DBGPLSQL: 32 PRMVAL = type=>'SBT_TAPE',dupcnt=>1
DBGPLSQL: 33 TEXTNOD = );
As you see above, even for tape channel rman uses database plsql to allocate channels..
So the thing we need to keep in my mind is that, when we have a tape device or a tape agent configured to run on only one of the cluster, our rman backups can encounter errors like the following;
RMAN-10035: exception raised in RPC:
ORA-19624: Operation failed, retry possible
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27211: Failed to load Media Management Library
It can be easily seen that rman cannot allocate the sbt_tape type channel here, but supposing that we already configured our libraries to connect the sbt device, these errors shoud not be seen, because we use node 1 to connect to database using rman.
On the other hand, the reason for these errors is actually the clusterwide parallelism ...
Rman connects to the target instance in a load balanced manner.. Rman creates its sessions and allocates channels through these session directly from the database using plsql. So if rman goes to node 2 because of the load balancing, and if we didnt configured our sbt type libraries/agent, rman normally produces above errors..
So in order to prevent these type of erros
* we should allocate channels manually from the node that configured to access our tape libraries
or
* we should configure all of the nodes in the cluster to be able to allocate necessary rman channels.
To create channels only from a specific node, we should create rman channels as follows;
CONFIGURE CHANNEL 1.. CONNECT 'user1/pwd1@node1';
Note that : node 1 is the node that configured properly for sbt type backups..
You can also check out the following post:
No comments :
Post a Comment
If you will ask a question, please don't comment here..
For your questions, please create an issue into my forum.
Forum Link: http://ermanarslan.blogspot.com.tr/p/forum.html
Register and create an issue in the related category.
I will support you from there.