Confusion with multiple TDPO opt files

AreEss

ADSM.ORG Member
Joined
Jun 10, 2008
Messages
19
Reaction score
0
Points
0
Location
Northeast Ohio
Hello, all. I'm relatively new to TSM, and entirely new to TSM+RMAN. (Not so new to RMAN.) As a result, I'm faced with more than a little confusion regarding how to configure TSM/TDPO in my environment.

I have several Unix servers running Oracle, which are segregated by version. e.g. Oracle 9i is over on nodeA, Oracle 10g is over on nodeB. On each node, I have upward of 8 specific database instances. Thusly leading to my confusion after poring over the documentation. Configuring Domain, check. Configuring Management Classes, check. Configuring Nodes, screeching halt.
My confusion stems from how exactly each node is named and configured. By my understanding, I have a single dsm.sys which does not need to be owned by oracle (my Oracle user, how inventive I am!) located in /opt/tivoli/tsm/client/oracle/bin64. This file looks something like this:

Code:
 SErvername  tdpo
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsmserver
nodename ora10prod
tcpclienta cluddor100b
errorlogname /etc/oracle/log/tdpo.error.default
errorlogretention 30 D
passwordaccess generate
passworddir /etc/oracle/passwd

Obviously, /etc/oracle being owned by oracle, and extraneous parts trimmed out. The absence of dsmi* and includexcl is deliberate, and the part I am having trouble understanding. I will be firing different databases, all on the same Management Class, but at different times and with different options. I can't seem to find a good example or explanation of how to do this, or how I should address the issue of nodename.
My personal thought (and please correct me if I'm wrong here) is that I would want to backup each instance as a unique node name; e.g. testdbA on ora10dev as Node testdbA in Domain RMAN, testdbC on ora10dev as Node testdbC in Domain RMAN, etc. Is this correct, or should I back up all instances with the same node name?
The next part is, how do I handle dsmi_orc_config and dsmi_log? I am fairly certain each dsmi_orc_config needs to be unique per-instance due to inclexcl, and I would like dsmi_log to be unique per-instance. Or do I simply need a stanza for every instance in my TDPO dsm.sys?

Thanks in advance!

P.S. - yes, the handle is in reference to the RS64 family. ;)
 
Let me just summarize your query..

You have multiple database instances running in you machine and you want to backup each instance with a unique name...

1.You should have separate tdpo.opt files for each and every db instance in different path
2.Separate DSM.OPT file should also be created for every tdpo.opt file.
3.In tdpo.opt file the dsmi_orc_config parameter should be pointing the correct dsm.opt file which you have defined.
4.Based on the servername field entered in dsm.opt file create the separate stanzas for each and servername entry /usr/tivoli/tsm/client/ba/bin/dsm.sys ..which is required to start the schedule services.
5.In RMAN script make sure you add the exact path for TDPO_OPTFILE parameter "allocate channel t1 type ’sbt_tape’ parms ’ENV=(TDPO_OPTFILE=/home/rman/scripts/tdpo.opt)’" so that it will take that databse instance backup with the desired name.

Based on your example :

for node testdbA :
create a separate tdpo.opt file in /home/oracle/testdbA/tdpo.opt file
create dsm.opt file in /home/oracle/testdbA/dsm.opt
in TDP.OPT file update dsmi_orc_config='/home/oracle/testdbA/dsm.opt '
create dsm.sys file in /home/oracle/testdbA/dsm.sys with the following entries..

SErvername testdba
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsmserver
nodename testdba
errorlogname '/home/oracle/testdbA/dsmerror.log'
schedlogname ''/home/oracle/testdbA/dsmsched.log'
errorlogretention 30 D
passwordaccess generate
passworddir '/home/oracle/testdbA/'

Then update the default /usr/tivoli/tsm/client/ba/bin/dsm.sys with the above mentioned servername entries ..

then modify your RMAN scripts
"allocate channel t1 type ’sbt_tape’ parms ’ENV=(TDPO_OPTFILE=/home/oracle/testdbA/tdpo.opt)’"

start the schedule service dsmc -se=testdba

I hope now ur ready to go ..Guys correct me if i had missed anything ...

Thanks,
Mani
 
Okay, so I will need a stanza in my base dsm.sys for each nodename, which is kind of what I was trying to avoid. Ah well, scripting abuse to the rescue, right?

I noticed though, that you're starting a separate client scheduler for each node. That's definitely a non-starter, as two of the systems are well past their "use-by" date, to put it gently. Is that mandatory? Part of the objective with having each database as a separate node is so that we don't have to give permission to delete backups to the entire system, just RMAN. Is there another way to do that?
To clarify; is there another way to give each instance a unique identifier, other than relying on "inclexcl /etc/oracle/dbname.def rman_mgmt_class" in dsm.sys?
 
Last edited:
Back
Top