You are on page 1of 5

Backup and Recovery of MSSQL databases with TSM TDP

If you are using TSM, you have three options available to get a good backup of an SQL database 1. Stop the SQL Server and backup the databases with the TSM Windows client - lots of messy scripting 2. Using the MSSQL backup utility, back the database up to a file on disk, then back that file up to tape using the TSM Windows client - needs extra disk space, and a way to resolve the scheduling issues between database backup and TSM backup 3. Back the database up with the TDP for MSSQL databases I'd recommend the third method as it is simple, allows you to backup the databases with the SQL server active, and interfaces with the SQL server utilities. This page discusses using Tivoli Data Protection (TDP) for MSSQL databases The TDPSQL client will only backup SQL databases, you also need a normal TSM client to backup all the non-database files on the Windows server.

Backing up SQL databases


Scheduling backups
You need three different Windows services defined when you

Backing up Oracle Databases on UNIX with the TSM TDP


Many of the directory and file names mentioned below will be site specific. For the sake of illustration, I'm assuming that Oracle was installed with a userid called 'oracle' and the main control files are located in /u01/app/oracle/admin/tsm_rman. We are backing up a database called PBW on an AIX server called U20614P545 to a TSM server called P2XT1, which has an IP address of 19.66.123.123 The Oracle TDP is installed in /usr/tivoli/tsm/client/ba/bin64/ and TSM itself can be found in /usr/tivoli/tsm/client/ba/bin64.

Oracle RMAN
First install the Oracle TDP software. The TSM TDP for Oracle interfaces with Oracle RMAN, the integrated Oracle backup and recovery tool. RMAN understands how the Oracle databases and recovery logs fit together, so we dont need to. Essentially, TSM is just used as a backend data store. The one thing you will need to understand is the RMAN options file, which is usually created by your DBA and held in the Oracle data space. Every database will have an RMAN options file which basically defines some environment variables. The location of these files will be site dependent. At a minimum they should set three DSMI variables as shown below.
DSMI_LOG /u01/app/oracle/admin/tsm_rman DSMI_DIR /usr/tivoli/tsm/client/api/bin64 DSMI_ORC_CONFIG /usr/tivoli/tsm/client/api/bin64/dsm.opt

Its useful to know where the RMAN logs are kept, as specified by the DSMI_LOG parameter, as you might need to check these out if you get problems. DSM_DIR tells RMAN where you installed the TDP code, /usr/tivoli/tsm/client/api/bin64 is the default location. DSMI_ORC_CONFIG points to the Oracle dsm.opt file Some sites like to keep all their TSM option files together, so they keep the ORC_CONFIG file in the default TSM installation directory, usually /usr/tivoli/tsm/client/ba/bin64/ and call it something like dsm_ora.opt to distinguish it from the normal dsm.opt file. In this case you either need to change the DSMI_ORC_CONFIG parameter to point to the correct file and path, or you need to add a symbolic link from /usr/tivoli/tsm/client/api/bin64/dsm.opt pointing to /usr/tivoli/tsm/client/ba/bin64/dsm_ora.opt.

Other sites are quite happy to have a 'normal' dsm.opt file in ba/bin64 and an 'oracle' dsm.opt in api/bin64. All the oracle dsm.opt file needs to contain is
Servername P2XT1_ORA

Other parameters that you might see include


TDPO_FS PBW

Ths is the filespace name used at the TSM server for this database. The default is adsmorc. In this case the database is called PBW, so we are calling the filespace PBW
TDPO_NODE U20614P545_ORA

The TSM node name that will be used to backup this database
TDPO_PSWDPATH /u01/app/oracle/admin/tsm_rman/password

See below
TDPO_OWNER oracle

The userid that 'owns' the TDPO process

Changes to dsm.sys
You also need to add at least one extra stanza to your dsm.sys file for Oracle database backups. This will typically look like
** Oracle Backups Servername commmethod tcpserveraddress tcpport webports nodename errorlogname errorlogretention passwordaccess enablelanfree LANFREECOMMMETHOD LANFREETCPPORT P2XT1_ORA tcpip 19.66.123.123 1604 1504,0 U20614P545_ORA /usr/local/logs/U20614P545_ORA.dsmerror.log 30 d prompt yes TCPIP 1510

Older Oracle backups needed a separate stanza from scheduling, like this
** Oracle Backup Scheduler servername P2XT1_ORA_SCHED commmethod tcpip

tcpserveraddress tcpport webports nodename errorlogname errorlogretention schedlogname schedlogretention passwordaccess passworddir managedservice schedmode

19.66.123.123 1604 1505,0 U20614P545_ORA /usr/local/logs/U20614P545_ORA.dsmerror.log 30 d /usr/local/logs/U20614P545_ORA.dsmsched.log 30 d generate /etc/security/tsm/P2XT1_ORA schedule prompted

Setting Passwords, checking licence, checking access rights


After you configure the option files as above, you may need to set the TDP password. To do this, you run the tdpoconf command
tdpoconf password -tdpo-optfile=/u01/app/oracle/admin/tsm_rman/PBW_tdpo.opt

If you need to create the oracle password directory you should assign ownership to the 'oracle' userid (or whatever userid you use to manage oracle) as follows. This links to the RMAN option, TDPO_PSWDPATH /u01/app/oracle/admin/tsm_rman/password Navigate to the tsm_rman directory, then run
mkdir password chown oracle:oracle chmod 770 password

Make sure that you have a licence file, /usr/tivoli/tsm/client/oracle/bin64/agent.lic Then check that oracle can update the TSM logs (666) and can read all the tsm option files (644)

TSM server definitions


All database backups have unique names, and backup retention is controlled by RMAN, so you must set backupdelete=yes. Your oracle management class should be set to keep just one active backup forever, with retonly and verdelete parameters both set to 0. Define the client on your TSM server as U20614P545_ORA, the only difference from your standard UNIX clients would be that you set backupdelete=yes and may invoke the oracle management class with a special client optionset that picks up a database management class. Oracle clients also usually have maxnummountpoints set to 2. Start up the oracle client with dsmc -server=P2XT1_ORA and set the client password when prompted.

Finally, check the RMAN setup is working with the showenv option on the tdpoconf command;
tdpoconf SHOWENV -TDPO_OPT=/u01/app/oracle/admin/tsm_rman/PBW

back to top