ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 利用NETBACKUP将备份写到磁盘上

利用NETBACKUP将备份写到磁盘上

原创 Linux操作系统 作者:yangtingkun 时间:2007-06-25 00:00:00 0 删除 编辑

NETBACKUP备份软件主要用于将备份写到带库上,当然NETBACKUP也可以将备份写到磁盘上。


配置过程比较简单,这里简单描述一下。

首先,启动NETBACKUP的图形管理工具:jnbSA

下面先要配置一个存储单元:Storage Units。右键建立一个新的存储单元,输入存储单元的名称,比如:disk。选择存储单元类型:Disk。磁盘类型就是默认的Basic Disk。在Absolute pathname to directory处输入netbackup服务器上的备份目录,比如:/data1/backup。点击属性按钮,会弹出一个对话框,说明配置的目录的总容量和空用容量。确认后,将Maximum concurrent jobs的值修改为10,确保多个备份任务可以并行执行。备份时的最大并行度是这个设置与带库的驱动器数量两个值中小的那个。确认后,完成存储单元的配置。

下面选择新建policy:输入策略名称,比如test_disk

点击确定后,进入策略的属性界面,在策略类型中,选择ORACLE。在测试存储单元中选择刚刚配置的disk。点击确认。

NetBackup会生成一个默认的SCHEDULEDefault-Application-Backup,如果不想使用这个,可以新建一个。点击NEW,输入名称,比如:sche_disk。备份类型选择:Application Backup。在Start Windows页的Duration选择7天,保证这个策略随时都是可以备份的。点击ADD完成SCHEDULE的备份。

如果没有正确的设置开始时间,备份时可能报错如下:

RMAN> run
2> {
3> allocate channel c1 device type sbt parms = 'ENV=(NB_ORA_POLICY=test_disk, NB_ORA_SCHED=sche_disk)';
4> backup tablespace users;
5> }

分配的通道: c1通道 c1: sid=276 实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 backup 25-6 -07通道 c1: 启动全部数据文件备份集通道 c1: 正在指定备份集中的数据文件输入数据文件 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在启动段 1 25-6 -07释放的通道: c1
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: backup
命令 (c1 通道上, 06/25/2007 16:36:53 ) 失败

ORA-19506:
无法创建顺序文件, 名称 = "qjil640m_1_1", 参数 = ""
ORA-27028: skgfqcre: sbtbackup
返回错误

ORA-19511:
从介质管理器层接收到错误, 错误文本为:
VxBSACreateObject: Failed with error:
Server Status: operation not allowed during this time period

最后,需要设置这个策略允许的客户端。点击添加客户端,然后输入客户端主机名,比如racnode1,在硬件和操作系统中,选择合适的操作系统,这里是Solaris8。点击OK完成客户端的添加。

如果没有正确的设置客户端,备份时会报错如下:

RMAN> run
2> {
3> allocate channel c1 device type sbt parms = 'ENV=(NB_ORA_POLICY=test_disk, NB_ORA_SCHED=sche_disk)';
4> backup tablespace users;
5> }

分配的通道: c1通道 c1: sid=276 实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 backup 25-6 -07通道 c1: 启动全部数据文件备份集通道 c1: 正在指定备份集中的数据文件输入数据文件 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在启动段 1 25-6 -07释放的通道: c1
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: backup
命令 (c1 通道上, 06/25/2007 16:35:05 ) 失败

ORA-19506:
无法创建顺序文件, 名称 = "qiil63ta_1_1", 参数 = ""
ORA-27028: skgfqcre: sbtbackup
返回错误

ORA-19511:
从介质管理器层接收到错误, 错误文本为:
VxBSACreateObject: Failed with error:
Server Status: the specified client does not exist in an active policy within the configuration database

最后注意一点,如果希望NETBACKUP将备份写到文件,那么就不能配置CHANNELDEVICE TYPEDISK,这样RMAN会绕过NETBACKUP而直接进行备份。

必须通过DEVICE TYPE SBT来启动NETBACKUP的备份策略。由于可能存在多个备份策略,可以在分配CHANNEL的时候指定刚刚建立的测试和SCHEDULE

RMAN> run
2> {
3> allocate channel c1 device type sbt parms = 'ENV=(NB_ORA_POLICY=test_disk, NB_ORA_SCHED=sche_disk)';
4> backup tablespace users;
5> }

释放的通道: ORA_SBT_TAPE_1释放的通道: ORA_SBT_TAPE_2分配的通道: c1通道 c1: sid=276 实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)

启动 backup 25-6 -07通道 c1: 启动全部数据文件备份集通道 c1: 正在指定备份集中的数据文件输入数据文件 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在启动段 1 25-6 -07通道 c1: 已完成段 1 25-6 -07段句柄=qhil61qj_1_1 标记=TAG20070625T155915 注释=API Version 2.0,MMS Version 5.0.0.0通道 c1: 备份集已完成, 经过时间:00:01:05完成 backup 25-6 -07释放的通道: c1

RMAN> list backupset tag tag20070625t155915;

备份集列表
===================

BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
3728 Full 200.25M SBT_TAPE 00:01:00 25-6
-07
BP
关键字: 3764 状态: AVAILABLE 已压缩: NO 标记
: TAG20070625T155915
句柄: qhil61qj_1_1 介质
:
备份集 3728 中的数据文件列表

文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
5 Full 5216756305 25-6
-07 +DISK/testrac/datafile/users.267.618591279

登陆到NETBACKUP的服务器:

bash-2.03$ cd /data1/backup
bash-2.03$ ls -l
total 410406
-rw------- 1 root root 210010112 Jun 25 15:59 racnode1_1182758355_C1_F1.1182758355.img
-rw------- 1 root root 804 Jun 25 15:59 racnode1_1182758355_C1_F1.1182758355.info
-rw------- 1 root root 1024 Jun 25 15:59 racnode1_1182758355_C1_HDR.1182758355.img
-rw------- 1 root root 806 Jun 25 15:59 racnode1_1182758355_C1_HDR.1182758355.info

可以看到,从Rman中发现归档是存放在SBT上,但是实际文件存放由NETBACKUP策略中配置的存储单元决定。存储单元的设置是服务器的/data1/backup目录,在这个目录下,可以看到4root产生的文件,这个文件就是RMAN通过NETBACKUP产生的真实文件。

RMAN本身不支持备份到远端站点,但是配置NETBACKUP,则可以实现远端备份。将NETBACKUPSERVER安装到一个用于备份的远端服务器上,在Oracle服务器上安装客户端,仿照上面的方法进行备份,就可以实现RMAN将备份写到远端服务器的磁盘上。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-69324/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10487317