免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4403 | 回复: 17
打印 上一主题 下一主题

[备份软件] nub使用rman备份oralce问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-08-07 23:25 |只看该作者 |倒序浏览
os:win2000 server  
db version:Release 9.0.1.0.1
备份到磁盘
1)备份完成之后(没有红XX),netbackup administrator 下console avtivity monitor看到jobs备份的files为0,查看生成的文件XXX.out,没有提示有任何错误。
没有恢复目录,由于只是测试,在存在控制文件的情况下恢复没有问题,这样的提示界面时候正常?
2)script:
echo run
echo {
echo allocate channel ch00 device type disk;
echo allocate channel ch01 device type disk;
echo backup
echo %BACKUP_TYPE%                  
# “我做的是全备份”
echo format 'G:\nbutest\d%%d_t%%t_T%%T_s%%s' database;
echo release channel ch00;
echo release channel ch01;
echo allocate channel ch00 device type disk;
echo backup format 'G:\nbutest\arc_t%%t'
echo archivelog all;
echo release channel ch00;
echo }
熟悉nbu的说一下是否正常,由于使用rman直接恢复正常,目前业不知道问题出在哪里,DX指点!

论坛徽章:
0
2 [报告]
发表于 2006-08-08 09:34 |只看该作者
为啥都要写ECHO呢?

论坛徽章:
0
3 [报告]
发表于 2006-08-08 09:40 |只看该作者
是否GUI只看到总脚本,没有看到分脚本?
如果是这样的话说明链接库没有起作用
mkdir c:\program files\veritas\netbackup\logs\bphdb
重新备份,看bphdb的记录

论坛徽章:
0
4 [报告]
发表于 2006-08-08 13:54 |只看该作者
你这个脚本跟NETBACKUP 没什么关系啊。把问题描述清楚了,理解LZ的意思很困难

论坛徽章:
0
5 [报告]
发表于 2006-08-08 15:45 |只看该作者
楼主基本的东西还没搞明白,你现在和nbu还没有多大关系.
allocate channel ch00 device type disk;

论坛徽章:
0
6 [报告]
发表于 2006-08-08 15:53 |只看该作者
对不起,可能是我没有描述清楚,我重新描述一下:
1)脚本是veritas自带的,只需要更改部分即可备份,比如登陆数据库用户名密码,sid等,文件名为C:\nubscrpt\hot_database_ful_backup.cmd,修改之后里面内容为
@REM $Header: hot_database_backup.cmd,v 1.2 2003/09/11 21:17:14 $

@REM bcpyrght
@REM ***************************************************************************
@REM * $VRTScprght: Copyright 1993 - 2003 VERITAS Software Corporation, All Rights Reserved $ *
@REM ***************************************************************************
@REM ecpyrght
@REM
@REM ---------------------------------------------------------------------------
@REM                          hot_database_backup.cmd
@REM ---------------------------------------------------------------------------
@REM This script uses Recovery Manager to take a hot (inconsistent) database
@REM backup. A hot backup is inconsistent because portions of the database are
@REM being modified and written to the disk while the backup is progressing.
@REM You must run your database in ARCHIVELOG mode to make hot backups.
@REM
@REM NOTE information for running proxy backups has been included.  These
@REM information sections begin with a comment line of PROXY
@REM ---------------------------------------------------------------------------

@setlocal ENABLEEXTENSIONS

@REM ---------------------------------------------------------------------------
@REM No need to echo the commands.
@REM ---------------------------------------------------------------------------

@echo off

@REM ---------------------------------------------------------------------------
@REM Put output in the same filename, different extension.
@REM ---------------------------------------------------------------------------

@set RMAN_LOG_FILE="%~dpn0.out"

@REM ---------------------------------------------------------------------------
@REM You may want to delete the output file so that backup information does
@REM not accumulate.  If not, delete the following command.
@REM ---------------------------------------------------------------------------


@REM ---------------------------------------------------------------------------
@REM Replace H:\oracle\ora81, below, with the Oracle home path.
@REM ---------------------------------------------------------------------------

@set ORACLE_HOME=c:\oracle\ora90

@REM ---------------------------------------------------------------------------
@REM Replace ora81, below, with the Oracle SID.
@REM ---------------------------------------------------------------------------

@set ORACLE_SID=orcl9i

@REM ---------------------------------------------------------------------------
@REM Replace sys/manager, below, with the target connect string.
@REM ---------------------------------------------------------------------------

@set TARGET_CONNECT_STR=sys/sys
@REM ---------------------------------------------------------------------------
@REM Set the Oracle Recovery Manager.
@REM ---------------------------------------------------------------------------

@set RMAN=C:\oracle\ora90\bin\rman.exe

@REM ---------------------------------------------------------------------------
@REM PROXY
@REM For a PROXY backup, uncomment the line below and replace the value.
@REM
@REM       NB_ORA_PC_STREAMS - specifies the number of parallel backup streams
@REM                           to be started.
@REM ---------------------------------------------------------------------------
@REM @set NB_ORA_PC_STREAMS=3


@REM ---------------------------------------------------------------------------
@REM Log the start of this scripts.
@REM ---------------------------------------------------------------------------

@for /F "tokens=1*" %%p in ('date /T') do @set DATE=%%p %%q
@for /F %%p in ('time /T') do @set DATE=%DATE% %%p

@echo ==== started on %DATE% ==== >> %RMAN_LOG_FILE%
@echo Script name: %0 >> %RMAN_LOG_FILE%

@REM ---------------------------------------------------------------------------
@REM Several RMAN commands use time parameters that require NLS_LANG and
@REM NLS_DATE_FORMAT to be set. This example uses the standard date format.
@REM Replace below with the desired language values.
@REM ---------------------------------------------------------------------------

@set NLS_LANG=american
@set NLS_DATE_FORMAT=YYYY-MM-DD:hh24:mi:ss

@REM ---------------------------------------------------------------------------
@REM Print out environment variables set in this script.
@REM ---------------------------------------------------------------------------

@echo #                                       >> %RMAN_LOG_FILE%
@echo   RMAN  :  %RMAN%                       >> %RMAN_LOG_FILE%
@echo   NLS_LANG  :  %NLS_LANG%               >> %RMAN_LOG_FILE%
@echo   ORACLE_HOME  :  %ORACLE_HOME%         >> %RMAN_LOG_FILE%
@echo   ORACLE_SID  :  %ORACLE_SID%           >> %RMAN_LOG_FILE%
@echo   NLS_DATE_FORMAT  :  %NLS_DATE_FORMAT% >> %RMAN_LOG_FILE%
@echo   RMAN_LOG_FILE  :  %RMAN_LOG_FILE%     >> %RMAN_LOG_FILE%

@REM ---------------------------------------------------------------------------
@REM PROXY
@REM For a PROXY backup, uncomment the line below.
@REM ---------------------------------------------------------------------------
@REM @echo   NB_ORA_PC_STREAMS  :  %NB_ORA_PC_STREAMS%     >> %RMAN_LOG_FILE%

@REM ---------------------------------------------------------------------------
@REM Print out environment variables set in bphdb.
@REM ---------------------------------------------------------------------------

@echo   NB_ORA_SERV  :  %NB_ORA_SERV%                     >> %RMAN_LOG_FILE%
@echo   NB_ORA_FULL  :  %NB_ORA_FULL%                     >> %RMAN_LOG_FILE%
@echo   NB_ORA_INCR  :  %NB_ORA_INCR%                     >> %RMAN_LOG_FILE%
@echo   NB_ORA_CINC  :  %NB_ORA_CINC%                     >> %RMAN_LOG_FILE%
@echo   NB_ORA_CLASS  :  %NB_ORA_CLASS%                   >> %RMAN_LOG_FILE%

@REM ---------------------------------------------------------------------------
@REM We assume that the database is properly opened. If desired, this would
@REM be the place to verify that.
@REM ---------------------------------------------------------------------------

@REM ---------------------------------------------------------------------------
@REM If this script is executed from a NetBackup schedule, NetBackup
@REM sets an NB_ORA environment variable based on the schedule type.
@REM For example, when:
@REM     schedule type is                BACKUP_TYPE is
@REM     ----------------                --------------
@REM Automatic Full                      INCREMENTAL LEVEL=0
@REM Automatic Differential Incremental  INCREMENTAL LEVEL=1
@REM Automatic Cumulative Incremental    INCREMENTAL LEVEL=1 CUMULATIVE
@REM
@REM For user initiated backups, BACKUP_TYPE defaults to incremental
@REM level 0 (Full).  To change the default for a user initiated
@REM backup to incremental or incremental cumulative, uncomment
@REM one of the following two lines.
@REM @set BACKUP_TYPE="INCREMENTAL LEVEL=0"
@REM @set BACKUP_TYPE="INCREMENTAL LEVEL=1 CUMULATIVE"
@REM
@REM Note that we use incremental level 0 to specify full backups.
@REM That is because, although they are identical in content, only
@REM the incremental level 0 backup can have incremental backups of
@REM level > 0 applied to it.
@REM ---------------------------------------------------------------------------

@REM ---------------------------------------------------------------------------
@REM What kind of backup will we perform.
@REM ---------------------------------------------------------------------------

@set BACKUP_TYPE=INCREMENTAL Level=0


@REM ---------------------------------------------------------------------------
@REM Call Recovery Manager to initiate the backup. This example does not use a
@REM Recovery Catalog. If you choose to use one, remove the option, nocatalog,
@REM from the rman command line below and add a
@REM 'rcvcat <userid>/<passwd>@<tns alias>' statement.
@REM
@REM  NOTE WHEN USING TNS ALIAS: When connecting to a database
@REM  using a TNS alias, you must use a send command or a parms operand to
@REM  specify environment variables.  In other words, when accessing a database
@REM  through a listener, the environment variables set at the system level are not
@REM  visible when RMAN is running.  For more information on the environment
@REM  variables, please refer to the NetBackup for Oracle Admin. Guide.
@REM
@REM ---------------------------------------------------------------------------

@REM ---------------------------------------------------------------------------
@REM PROXY
@REM For a PROXY backup, you must use a send command to specify
@REM the NB_ORA_PC_STREAMS environment variable. For example,
@REM echo ALLOCATE CHANNEL ch01 TYPE 'SBT_TAPE';
@REM echo SEND 'NB_ORA_PC_STREAMS=%%NB_ORA_PC_STREAMS%%';
@REM
@REM %BACKUP_TYPE% must also be removed and replaced with the PROXY parameter
@REM in the RMAN section associated with the data files.  For example,
@REM echo BACKUP
@REM echo       PROXY
@REM echo       FORMAT 'bk_u%%u_s%%s_p%%p_t%%t'
@REM echo       DATABASE;
@REM            .
@REM            .
@REM  Note that the controlfiles and archivelogs are not backed up using proxy
@REM  copy method. Rman will initiate non-proxy copy sessions to backup the
@REM  controlfile and archivelogs.
@REM ---------------------------------------------------------------------------
@(
echo run
echo {
echo allocate channel ch00 device type disk;
echo allocate channel ch01 device type disk;
echo backup
echo %BACKUP_TYPE%
echo format 'G:\nbutest\d%%d_t%%t_T%%T_s%%s' database;
echo release channel ch00;
echo release channel ch01;
echo allocate channel ch00 device type disk;
echo backup format 'G:\nbutest\arc_t%%t'
echo archivelog all;
echo release channel ch00;
echo }
) | %RMAN% target %TARGET_CONNECT_STR% nocatalog msglog '%RMAN_LOG_FILE%' append

@set ERRLEVEL=%ERRORLEVEL%

@REM ---------------------------------------------------------------------------
@REM NetBackup (bphdb) stores the name of a file in an environment variable,
@REM called STATUS_FILE. This file is used by an automatic schedule to
@REM communicate status information with NetBackup's job monitor. It is up to
@REM the script to write a 0 (passed) or 1 (failure) to the status file.
@REM ---------------------------------------------------------------------------

@if %ERRLEVEL% NEQ 0 @goto err

@set LOGMSG=ended successfully
@if "%STATUS_FILE%" EQU "" goto end
@echo 0 > "%STATUS_FILE%"
@goto end

:err
@set LOGMSG=ended in error
@if "%STATUS_FILE%" EQU "" @goto end
@echo 1 > "%STATUS_FILE%"

:end

@REM ---------------------------------------------------------------------------
@REM Log the completion of this script.
@REM ---------------------------------------------------------------------------

@for /F "tokens=1*" %%p in ('date /T') do @set DATE=%%p %%q
@for /F %%p in ('time /T') do @set DATE=%DATE% %%p

@echo #  >> %RMAN_LOG_FILE%
@echo %==== %LOGMSG% on %DATE% ==== >> %RMAN_LOG_FILE%
@endlocal
@REM End of Main Program -----------------------------------------------------
2)通过nbu调用此脚本备份oracle,GUI显示备份完成之后,文件数(files)为0,大小为0,通过rman可以正常恢复。
谢谢楼上各位。

论坛徽章:
0
7 [报告]
发表于 2006-08-08 15:56 |只看该作者
楼上的你是指要省略device?

论坛徽章:
0
8 [报告]
发表于 2006-08-08 16:06 |只看该作者
备份完成以后C:\Program Files\VERITAS\NetBackup\logs\bphdb\080806.log文件内容:
16:00:19.359 [2884.2868] <2> logparams: -sb -rdbms oracle -S lxbsvr -to 300 -c lxbsvr_full_everyday -s everyday -clnt lxbsvr -FULL -b lxbsvr_1155024016 -jobid 29 -shm
16:00:19.359 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_POLICY=lxbsvr_full_everyday
16:00:19.359 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_CLIENT=lxbsvr
16:00:19.359 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_MODE=B
16:00:19.359 [2884.2868] <4> bphdb main: INF - NB_ORA_POLICY=lxbsvr_full_everyday
16:00:19.375 [2884.2868] <4> bphdb main: INF - NB_ORA_SCHED not defined.
16:00:19.375 [2884.2868] <4> bphdb main: INF - NB_ORA_PC_SCHED=everyday
16:00:19.375 [2884.2868] <4> bphdb main: INF - NB_ORA_SERV=lxbsvr
16:00:19.375 [2884.2868] <4> bphdb main: INF - NB_ORA_PC_BTYPE not set
16:00:19.375 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_FULL=1
16:00:19.375 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_INCR=0
16:00:19.375 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_CINC=0
16:00:19.375 [2884.2868] <4> bphdb main: INF - setenv NB_ORA_SCHEDULED=1
16:00:19.375 [2884.2868] <4> bphdb sync_server: INF - BACKUP START
16:00:19.406 [2884.2868] <4> bphdb sync_server: INF - CONTINUE BACKUP message received.
16:00:19.406 [2884.2868] <2> bphdb get_filelist: INF - Read filename: <C:\nubscrpt\hot_database_ful_backup.cmd>
16:00:19.406 [2884.2868] <2> bphdb get_filelist: INF - Read filename: <CONTINUE>
16:00:19.421 [2884.2868] <4> bphdb do_script: INF - Processing "C:\nubscrpt\hot_database_ful_backup.cmd"
16:01:19.453 [2884.2868] <4> bphdb do_script: INF - bphdb still working.
16:01:47.640 [2884.2868] <4> bphdb do_script: INF - command successfully initiated
16:01:47.640 [2884.2868] <4> bphdb main: file C:\Program Files\VERITAS\NetBackup\temp\obackup_class deleted.
16:01:47.640 [2884.2868] <4> bphdb Exit: INF - bphdb exit normal

16:01:47.640 [2884.2868] <4> bphdb Exit: INF - EXIT STATUS 0: the requested operation was successfully completed

论坛徽章:
0
9 [报告]
发表于 2006-08-08 16:30 |只看该作者
你这脚本就没有要求往nbu里写啊。。。

rman的备份设备是sbt_tape,你直接写disk了。根本就没有通过nbu。所以nbu报错是应该的。

论坛徽章:
0
10 [报告]
发表于 2006-08-08 17:54 |只看该作者
谢谢楼上的,把类型改为sbt_tape确实可以了。只是我有一点没有明白,因为我是备份到disk上,为什么要改为磁带tape呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP