- 论坛徽章:
- 0
|
TSM5.2+TDP+RMAN备份安装配置及说明(原创)
SErvername TSM_FS\r\n COMMmethod TCPIP\r\n TCPPort 1500\r\n TcpServerAddress xxx.xxx.xxx.xxx(tsm server的IP)\r\n NODENAME 已注册的client_node (比如client_fs)\r\n\r\n (23) vi /usr/tivoli/tsm/client/ba/bin/dsm.opt\r\n SErvername TSM_ORA\r\n dsm.opt文件表示默认备份命令读取的servername\r\n (24) vi /usr/tivoli/tsm/server/bin/dsmserv.opt\r\n VOLUMEHistory /tsm/volhist.log (定义存储备份卷信息的文件)\r\n DEVConfig /tsm/devconfig (保存TSM配置的文件)\r\n (25) 每格三天备份TSM本身的数据库信息\r\n (25.1) 定义一个devclass,选择file device class,在directory里面定义备份TSM数据库的目录\r\n (25.2) Operation View-->;Automate Operations-->;define an administrative command\r\n 在comannd里面写:backup db devclass=tsmdbbackup(刚定义的file device class名) type=full\r\n (25.3)定义执行周期和频度\r\n (26)测试TSM的备份\r\n dsmc archive \'/expdata/*\' -subdir=yes -pass=pass\r\n dsmadmc\r\n tsm>;q vol\r\n tsm>; q content a0050(a0050代表volume_name)\r\n \r\n好了,现在TSM的SERVER和CLIENT全部安装配置完毕了。\r\n下面说一个问题,我以前一直没弄明白的,现在理解了,请大家注意:\r\n比如我们的TSM环境中,需要备份ORACLE数据库数据和文件系统数据,那么我们希望定义两个STGPOOL,比如\r\norastg和fsstg,orastg专门备份oracle数据,fsstg专门备份文件系统数据。\r\n那么,我们通过在tsm中注册的node连接进来做备份,怎么知道用了哪个storage pool呢?\r\n并且node name和storage pool是怎么个对应关系呢?\r\n\r\n弄清楚这些关系之前需要我们对TSM中的概念有初步理解,大家可以这样记:\r\n1个policy domain对应1个激活的policy set,\r\n1个激活的policy set对应1个默认的managment class\r\n1个mgmt对应1个archive copy group和backup copy group\r\n1个archive copy group定义1个storage pool\r\n1个backup copy group 也定义1个storage pool\r\n在客户端用dsmc做备份时,指定了archive参数,就会用archive copy group中定义的stgpool,反之就用backup copy group中定义的stgpool\r\n比如:\r\n dsmc archive \'/expdata/*\' -subdir=yes -pass=pass\r\n是使用的archive copy group中定义的stgpool\r\ndsmc selective \'/expdata/file1\' ,使用的是backup copy group中定义的stgpool\r\n在注册用户时,需要我们明确这个用户对应哪个policy domain,这样我们就知道哪个node对应哪个storage pool了\r\n\r\n现在明白了node和stgpool的关系,那么,我们怎么知道在备份恢复命令dsmc中是用的哪个node去连接的TSM SERVER呢?\r\n请大家看我前面的dsm.sys中的内容,我定义了两个node_Name,分别属于两个SERVERNAME,\r\n其实,dsm.sys文件有点类似ORACLE中的tnsnames.ora文件,\r\n选择哪个NODE是由dsmc命令中的-se参数指定的:\r\ndsmc archive \'/expdata/*\' -se=TSM_ORA -pass=pass\r\n这样tsmserver就知道是使用名叫TSM_ORA的servername去连接数据库,TSMSERVE然后查找dsm.sys文件,看到TSM_ORA\r\n对应的node_name是client_ora,就知道用client_ora节点去连接数据库。而 client_ora中又定义了使用的Policy Domain,\r\n所以可以确定到我们使用的是哪个stgpool了。\r\n\r\n但是dsmc archive \'/expdata/*\' -pass=pass\r\n没有指定-se参数时,TSMSERVER会去读取dsm.opt文件中的内容,看是哪个Servername,所以dsm.opt是默认时\r\ntsmserve去读取解析的servername。\r\n\r\n好了,这样TSMSERVER的配置和备份基本没什么问题了。至于客户端备份恢复的命令和TSMSERVER的命令,请大家\r\n参考相关的文档。\r\n\r\nTDP的安装和配置\r\n\r\n安装完TDP以后,需要做以下步骤才能让RMAN与TDP结合使用(ORACLE9I):\r\n\r\n1)su - oracle\r\n2) ln -s /usr/lib/libobk64.a $ORACLE_HOME/lib/libobk.a\r\n3) vi /usr/tivoli/tsm/client/oracle/bin64/tdpo.opt\r\n DSMI_ORC_CONFIG (指定TDP使用的dsm.opt的位置,TDP使用自己的dsm.opt文件)\r\n DSMI_DIR (指定存放dsm.sys的目录)\r\n TDPO_FS (指定用于备份的文件空间名,用TSM查看时,显示的备份的ORACLE数据文件的根目录)\r\n TDPO_NODE (指定用于备份操作的节点名,是客户端的主机名)\r\n TDPO_OWNER (备份文件的所属用户)\r\n TDPO_PSWDPATH (指定tdpoconf生成的口令文件的位置)\r\n\r\n4) tdpoconf password -tdpo_optfile=<绝对路径的tdpo.opt file>;\r\n5)测试: $ORACLE_HOME/bin/sbttest test\r\n显示:The sbt function pointers are loaded from libobk.a(shr.o) library.\r\n-- sbtinit succeeded\r\n证明TDP已与ORACLE连接好并测试成功。\r\n\r\n可以使用RMAN来做备份了,把数据直接备份到磁带库中\r\nrun {\r\n allocate channel tdp1 type \'sbt_type\' parms \'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt)\';\r\n backup\r\n incremental 0\r\n format \'FULLDB_%t_%s_%p\'\r\n database;\r\n ....\r\n release channel tdp1;\r\n }\r\n\r\nOK。写完了,大家有问题或有好建议请多交流,特别是rman备份脚本中\r\nparms参数应该怎么写更好,希望多指导我,最好能给我提供范本,谢谢。\r\n\r\n匆忙写了这么多,比较凌乱,请多指教。\r\n希望兄弟们多UP一下,UP的人多了,就变精华了。呵呵。 |
|