1.
TDPO配置Ø
安装TDPO FOR ORACLE
TDPO的安装软件在XXX的/tsm/tdpo目录下,版本为5.2.0.0
Cd /tsm/tdpo
Smitty installp
选择当前目录
选择所有文件安装
Ø
测试TDPO模块正常工作
安装完毕TDPO后,开始配置TDPO。
为了使ORACLE能通过TDPO直接备份数据文件到磁带库,需要做:
# Ln –sf /usr/Tivoli/tsm/client/oracle/bin64/libobk64.a
/usr/lib/libobk64.a
# Ln –sf /usr/lib/libobk64.a
$ORACLE_HOME/lib/libobk.a
测试TDPO模块是否安装成功:
$ sbttest test
(使用oracle用户登录执行)
结果如下:
The sbt function pointers are loaded from libobk.a(shr.o) library.
-- sbtinit succeeded
Return code -1 from sbtinit, bsercoer = 0, bsercerrno = 0
Message 0 not found;
product=RDBMS; facility=SBT
证明测试成功。
如果测试不成功,一般是tdpo.opt配置文件不对。
Ø
开始配置TDPO
用root用户登录。
Cd /usr/Tivoli/tsm/client/oracle/bin64
第一步:
Vi tdpo.opt:
DSMI_ORC_CONFIG
/usr/tivoli/tsm/client/oracle/bin64/dsm.opt
DSMI_LOG
/usr/tivoli/tsm/client/ba/bin
DSMI_DIR
/usr/tivoli/tsm/client/api/bin64
TDPO_FS
ora9i
-------(此处需要和备份主机上的内容一致,否则恢复时无法找到文件,此参数只是定义FILE SPACE名字,无太多实际意义)
TDPO_NODE
edw_db
----(此参数告诉TDPO用TSM的那个NODE去连接TSM SERVER)
TDPO_OWNER
oracle9
-----(此处需要和备份主机上的内容一致,否则恢复时无法找到文件,此参数表示存在TSMSERVER上的文件的OWNER是谁,如果这个配置得与TSM SERVER上实际不符合,则找不到备份的文件)
TDPO_PSWDPATH
/usr/tivoli/tsm/client/oracle/bin64
*TDPO_DATE_FMT
1
*TDPO_NUM_FMT
1
*TDPO_TIME_FMT
1
*TDPO_MGMT_CLASS_2
mgmtclass2
*TDPO_MGMT_CLASS_3
mgmtclass3
*TDPO_MGMT_CLASS_4
mgmtclass4
第二步:
由于tdpo是用自己的dsm.opt文件来决定使用什么NODE进行连接TSM SERVER,所以我们需要修改
DSMI_ORC_CONFIG指定的dsm.opt文件。
上例中:
Vi
/usr/tivoli/tsm/client/oracle/bin64/dsm.opt
* SErvername
A server name defined in the dsm.sys file
SErvername
ora_edw
---(此处注意,ora_edw需要在/usr/tivoli/tsm/client/ba/bin/dsm.sys中有对应的行)
第三步:
Cd /usr/Tivoli/tsm/client/oracle/bin64
./tdpoconf password –tdpo_optfile=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt
输入连接到TSM SERVER的CLIENT NODE的密码。
2次输入密码成功后,TDPO既可投入正常运行。
2.
SAN LAN-FREE配置Ø
安装STORAGE AGENT
STORAGE AGENT在XXX的 /tsm/tsm5.2_san目录下
Cd /tsm/tsm5.2_san/usr/sys/inst.images
Smitty installp
(安装 tsm storage agent 5.2.0.0)
Cd /tsm/tsm5.2_san/TSMSACAIX5280
Smitty installp
(安装tsm storage agent 5.2.8.0)
Cd /tsm/tsm5.2_san/TSMSACAIX5282
Smitty installp
(安装tsm storage agent 5.2.8.2)
注意:tsm storage agent的版本和tsm server的版本相差不能大于2。
即TSM SERVER5.2.10.0
Tsm storage agent 5.2.8.2
Ø
配置LAN-FREE
配置LAN-FREE模式其实很简单,关键在于理解一个概念即可。
安装完storage agent以后,会产生/usr/Tivoli/tsm/Storage/bin目录。
第一步:
Vi dsmsta.opt
增加下面两行:
Devconfig devconfig.out
Tcpport 1502
----定义AGENT代理服务的监听PORT号
第二步:
运行dsmsta,到TSM SERVER上注册:
dsmsta setstorageserver myname=stag_pods mypassword=fun4me myhladdress=10.10.10.1
servername=tsm serverpassword=not4u hladdress=10.10.10.2 lladdress=1500
这里有上面说的关键因素:
Setstorageserver
myname=stag_pods
这个是定义LAN-FREE通过TSM SERVER上哪个代理SERVER来进行备份
Myhladdress=10.10.10.1,这个是定义启动代理端程序的IP地址,既代理在哪台机器上运行,一般用哪个机器备份数据,就在哪个机器上启动一个DSMSTA代理,并且IP地址就写成是哪个机器的。
Servername=tsm
这个很重要,开始我理解为dsm.sys中写的server_name,后面又理解为要在TSM SERVER里面注册一个SERVER,但是都不对,这个servername就是说明了当前TSM SERVER的名字,dsmadmc进去后,在提示符下显示的名字。这个一定要正确,否则无法备份。(这个困绕了我很久)
比如:
Dsmadmc
Usre:admin
Pass:***
Tsm>
这里显示的名字叫tsm,则我们在上面那个命令中,servername就应等于tsm。而不是其他什么别的名字。这步才是配置LAN-FREE的关键,很多参考书上没有写清楚。网上其他网友也没有解释清楚。
Hladdress=,定义TSM SERVER的IP地址,TSM SERVER在哪台主机上运行,就定义好那个IP地址。
Lladdress=,定义TSM SERVER的服务端口,一般是1500。
运行完上面的dsmsta命令后,将自动生成/usr/Tivoli/tsm/Storage/bin/devconfig.out文件,自动在dsmsta.opt中加入了servername tsm一行。
第三步:
在TSM SERVER上运行:
Tsm>define server stag_pods serverpassword=fun4me hladdress=10.10.10.1 lladdress=1502
这里的stag_pods需要和第二步中的setstorageserver myname定义的名字一致。这个名字说明代理在SERVER上的虚拟SERVER,好比如是代理在TSM SERVER上申请了一个代理名,以后数据传输,都通过这个代理名,直接将数据传输到磁带库中。
Serverpassword和前面的也一致。
Hladdress,定义AGENT的IP地址。
Lladdress,定义在dsmsta.opt中写的TCPPORT的端口号。
这样我们可以看到:
代理与TSM SERVER的通讯:
(1)代理是通过在DEVCONFIG.out文件里面的配置和TSM SERVER通讯。
(2)Agent可以在devconfig.out里面找到TSM SERVER的IP地址(由hladdress定义)
(3)找到TSM SERVER的端口号(由lladdress定义)。
(4)可以知道连接到TSM SERVER的哪个SERVERNAME(由devconfig.out中的define server定义)。
(5)通过哪个storage server连接(setstorageserver myname=定义)
TSM SERVER与代理的通讯:
TSM SERVER可以找到:
(1)
代理的IP地址(define server 中的hladdress定义)
(2)
代理的端口号(由define server的lladdress定义)
(3)
代理使用的servername(由define server stag_pods定义)
第四步:定义PATH
Tsm>define path stag_pods ltodrv03 srctype=server
desttype=drive library=ltolib device=/dev/rmt3
Tsm>define path stag_pods ltodrv04 srctype=server
desttype=drive library=ltolib device=/dev/rmt4
Tsm>define path stag_pods ltodrv05 srctype=server
desttype=drive library=ltolib device=/dev/rmt5
Tsm>define path stag_pods ltodrv06 srctype=server
desttype=drive library=ltolib device=/dev/rmt6
Tsm>define path stag_pods ltodrv07 srctype=server
desttype=drive library=ltolib device=/dev/rmt7
Stag_pods为代理的虚拟SERVER名。
这样,当数据传输通过代理的虚拟SERVER名stag_pods连接到TSM SERVER后,它就知道使用哪些DRIVE进行备份。因为这里定义了DRIVER的PATH名。本案中我们定义了4个LTO-3的DRIVER。
小技巧:通过定义PATH,���们可以规定哪些AGENT的虚拟名使用带库中的哪几个DRIVER。进而决定哪些应用数据使用哪几个DRIVER备份。这个是LAN-FREE的优点。比如带库中有8个DRIVER,想其中4个作为EDW库的备份,另4个做为ODS库的备份。可以在这里定义PATH时区分开来。本案中ltodrv01-02是LTO-2的,ltodrv03-07是LTO-3的,所以我们没有使用LTO-2的DRIVER。
第五步:修改dsm.sys
Vi /usr/Tivoli/tsm/client/ba/bin/dsm.sys
在需要配置为LAN-FREE的SERVERNAME下面增加如下几句话:
SErvername
ora_edw
COMMmethod
TCPip
TCPPort
1500
TCPServeraddress
10.10.10.2
nodename
edw_db
passwordaccess
prompt
ENABLELANFREE
yes
LANFREECommMethod
TCPIP
LANFREETCPServerAddress
10.10.10.1
LANFREETCPPort
1502
第六步:启动代理
Cd /usr/tivoli/tsm/Storage/bin
Nohup ./dsmsta &
Tail –f nohup.out
可以看到DSMSTA代理在监听客户端的请求。
类似输入如下:
停在tsm:stag-rmantest>(针对与本案,应该是TSM:STAG_PODS>)。
说明在等待客户端传送数据。
第七步:测试是否正确
Dsmc回车
出现TSM>
就代表LAN-FREE正常。(需要后台启动了dsmsta程序以后)
代表AGENT SERVER、PATH以及dsm.sys配置都正常。
有时后出现lan free path failed的错误,是因为上面说的几步中有地方没有对应上。
我遇到的情况有
dsmsta进程没启动。
修改了dsmsta的配置后,dsmsta程序需没有重新启动。
PATH定义错误
Dsmsta定义错误
3.
ORACLE环境前期准备如果数据库备份客户端主机发生故障,需要使用另外的主机来恢复数据库,则在使用另外主机之前,我们需要对ORACLE的环境进行一些前期准备工作。
恢复主机要求:
1、
安装有ORACLE软件
2、
安装了TSM CLIENT
3、
配置了TDPO
4、
配置了STORAGE AGENT
5、
TSM CLIENT/TDPO/STORAGE AGENT要按照前面介绍的配置好
第一步:
设置ORACLE_SID
$ export ORACLE_SID=pods
---这步关键,以免恢复了错误的数据库。
第二步:
将原来pods数据库上的initpods.ora参数文件RCP过来到恢复主机的$ORACLE_HOME/dbs下面,修改几个参数:
Db_cache_buffer
Shared_pool_size
Pga_aggregate_target
Control_files
设置成与恢复主机适合的内存大小即可。
Control_files设置成合适的控制文件的LV。
第三步:
将/usr/Tivoli/tsm/client/ba/bin下的dsm.sys dsm.opt
/usr/Tivoli/tsm/Storage/bin/下的dsmsta.opt devconfig.out
/usr/Tivoli/tsm/client/oracle/bin64/下的tdpo.opt dsm.opt
全部RCP到恢复主机上(这些文件也可以自己手动配置)
第四步:
按照前面说的,重新配置一下TDPO和DSMSTA
4、做ORACLE的恢复测试