TSM5.2+TDP+RMAN备份安装配置及说明
最近在做TSM+RMAN的备份,看了论坛中介绍TSM的配置比较少,TDP的介绍就更少了,所以写了点过程,请大家多指教: <br><br>
1、安装TSM SERVER <br>
2、安装TSM CLIENT <br>
3、安装Tivoli Data Protector For Oracle <br>
安装完上面三个软件以后,就可以开始配置TSM SERVER、CLIENT和TDP了。<br>
<br>
配置TSM SERVER <br>
安装完SERVER以后,TSM SERVER会在TSM SERVER主机的1580端口上监听,输入 <br>
<a target=_blank href=http://tsm_server_ip:1580>http://tsm_server_ip:1580</a>就可以进入图形配置界面了,用户名:初始密码 admin/admin <br>
<br>
配置TSM的大致步骤如下(在SAN环境下,磁带库为IBM 3584-L52,TSM5.2) <br>
Object View-->Server Storage 下面: <br>
(1) define library (选择Automated Libraries) <br>
(2) define library path (在Tape Path中定义,Source Name输入名字比如TSM,Source Type=Server,Device=/dev/smc0) <br>
(3) define drive (选择Automated Drivers) <br>
(4) define drive path(在Tape Path中定义,Source Name=TSM,Destination_name选择定义的drive,Device=/dev/rmtx) <br>
(5) define device class <br>
(6) label volume(建议在命令行方式下做, <br>
进入命令行:#dsmadmc, <br>
标志volume:tsm>label libvolume library_name search=yes labelsource=barcode checkin=private overwrite=yes) <br>
以上是磁带都有标签的时候做,如果磁带没有标签,则需要手动的一个个定义磁带<br>
(7) define storage pool <br>
( define policy domain <br>
(9) define policy set <br>
(10) define managment class <br>
(11) define mgmt's archive copy group and backup copy group <br>
(12) assign mgmt as default <br>
(13) validate policy set <br>
(14) active policy set <br>
(15) register client node <br>
(16) define db volume(TSM默认的db volume很小,只有16M,所以我们要扩充DBVOL,建议用命令行做: <br>
tsm>define dbvolume volume_name(dbvol的路径和文件) formatsize=500(以M为单位) wait=no <br>
(17) extend db 500 (扩充db volume) <br>
(1 define logvolume(TSM默认的recovery log很小,只有16M,所以我们要扩充LOGVOL,建议用命令行做: <br>
tsm>define logvolume volume_name(logvol的路径和文件) formatsize=500 wait=no <br>
(19) extend log 500 <br>
(20) enabel session <br>
(21) accept date<br>
(22) vi /usr/tivoli/tsm/client/ba/bin/dsm.sys <br>
dsm.sys: <br>
SErvername TSM_ORA <br>
COMMmethod TCPIP <br>
TCPPort 1500<br>
TcpServerAddress 192.168.168.1(tsm server的IP)<br>
<br>
NODENAME 已register的client_node(比如client_ora)<br>
SErvername TSM_FS <br>
COMMmethod TCPIP <br>
TCPPort 1500 <br>
TcpServerAddress xxx.xxx.xxx.xxx(tsm server的IP) <br>
NODENAME 已注册的client_node (比如client_fs) <br>
<br>
(23) vi /usr/tivoli/tsm/client/ba/bin/dsm.opt <br>
SErvername TSM_ORA <br>
dsm.opt文件表示默认备份命令读取的servername <br>
(24) vi /usr/tivoli/tsm/server/bin/dsmserv.opt <br>
VOLUMEHistory /tsm/volhist.log (定义存储备份卷信息的文件) <br>
DEVConfig /tsm/devconfig (保存TSM配置的文件) <br>
(25) 每格三天备份TSM本身的数据库信息 <br>
(25.1) 定义一个devclass,选择file device class,在directory里面定义备份TSM数据库的目录 <br>
(25.2) Operation View-->Automate Operations-->define an administrative command <br>
在comannd里面写:backup db devclass=tsmdbbackup(刚定义的file device class名) type=full <br>
(25.3)定义执行周期和频度 <br>
(26)测试TSM的备份 <br>
dsmc archive '/expdata/*' -subdir=yes -pass=pass <br>
dsmadmc <br>
tsm>q vol <br>
tsm> q content a0050(a0050代表volume_name) <br>
<br>
好了,现在TSM的SERVER和CLIENT全部安装配置完毕了。 <br>
下面说一个问题,我以前一直没弄明白的,现在理解了,请大家注意: <br>
比如我们的TSM环境中,需要备份ORACLE数据库数据和文件系统数据,那么我们希望定义两个STGPOOL,比如 <br>
orastg和fsstg,orastg专门备份oracle数据,fsstg专门备份文件系统数据。 <br>
那么,我们通过在tsm中注册的node连接进来做备份,怎么知道用了哪个storage pool呢? <br>
并且node name和storage pool是怎么个对应关系呢? <br>
<br>
弄清楚这些关系之前需要我们对TSM中的概念有初步理解,大家可以这样记: <br>
1个policy domain对应1个激活的policy set, <br>
1个激活的policy set对应1个默认的managment class <br>
1个mgmt对应1个archive copy group和backup copy group <br>
1个archive copy group定义1个storage pool <br>
1个backup copy group 也定义1个storage pool <br>
在客户端用dsmc做备份时,指定了archive参数,就会用archive copy group中定义的stgpool,反之就用backup copy group中定义的stgpool <br>
比如: <br>
dsmc archive '/expdata/*' -subdir=yes -pass=pass <br>
是使用的archive copy group中定义的stgpool <br>
dsmc selective '/expdata/file1' ,使用的是backup copy group中定义的stgpool <br>
在注册用户时,需要我们明确这个用户对应哪个policy domain,这样我们就知道哪个node对应哪个storage pool了 <br>
<br>
现在明白了node和stgpool的关系,那么,我们怎么知道在备份恢复命令dsmc中是用的哪个node去连接的TSM SERVER呢? <br>
请大家看我前面的dsm.sys中的内容,我定义了两个node_Name,分别属于两个SERVERNAME, <br>
其实,dsm.sys文件有点类似ORACLE中的tnsnames.ora文件, <br>
选择哪个NODE是由dsmc命令中的-se参数指定的: <br>
dsmc archive '/expdata/*' -se=TSM_ORA -pass=pass <br>
这样tsmserver就知道是使用名叫TSM_ORA的servername去连接数据库,TSMSERVE然后查找dsm.sys文件,看到TSM_ORA <br>
对应的node_name是client_ora,就知道用client_ora节点去连接数据库。而 client_ora中又定义了使用的Policy Domain, <br>
所以可以确定到我们使用的是哪个stgpool了。 <br>
<br>
但是dsmc archive '/expdata/*' -pass=pass <br>
没有指定-se参数时,TSMSERVER会去读取dsm.opt文件中的内容,看是哪个Servername,所以dsm.opt是默认时 <br>
tsmserve去读取解析的servername。 <br>
<br>
好了,这样TSMSERVER的配置和备份基本没什么问题了。至于客户端备份恢复的命令和TSMSERVER的命令,请大家 <br>
参考相关的文档。 <br>
<br>
TDP的安装和配置 <br>
<br>
安装完TDP以后,需要做以下步骤才能让RMAN与TDP结合使用(ORACLE9I): <br>
<br>
1)su - oracle <br>
2) ln -s /usr/lib/libobk64.a $ORACLE_HOME/lib/libobk.a <br>
3) vi /usr/tivoli/tsm/client/oracle/bin64/tdpo.opt <br>
DSMI_ORC_CONFIG (指定TDP使用的dsm.opt的位置,TDP使用自己的dsm.opt文件) <br>
DSMI_DIR (指定存放dsm.sys的目录) <br>
TDPO_FS (指定用于备份的文件空间名,用TSM查看时,显示的备份的ORACLE数据文件的根目录) <br>
TDPO_NODE (指定用于备份操作的节点名,是客户端的主机名) <br>
TDPO_OWNER (备份文件的所属用户) <br>
TDPO_PSWDPATH (指定tdpoconf生成的口令文件的位置) <br>
<br>
4) tdpoconf password -tdpo_optfile=<绝对路径的tdpo.opt file> <br>
5)测试: $ORACLE_HOME/bin/sbttest test <br>
显示:The sbt function pointers are loaded from libobk.a(shr.o) library. <br>
-- sbtinit succeeded <br>
证明TDP已与ORACLE连接好并测试成功。 <br>
<br>
可以使用RMAN来做备份了,把数据直接备份到磁带库中 <br>
run { <br>
allocate channel tdp1 type 'sbt_type' parms 'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt)'; <br>
backup <br>
incremental 0 <br>
format 'FULLDB_%t_%s_%p' <br>
database; <br>
.... <br>
release channel tdp1; <br>
} <br>
<br>
OK。写完了,大家有问题或有好建议请多交流,特别是rman备份脚本中 <br>
parms参数应该怎么写更好,希望多指导我,最好能给我提供范本,谢谢。 <br>
<br>
<br>
<br>
<br>
页:
[1]