免费注册 查看新帖 |

Chinaunix

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

[Veritas NBU] NBU 7.5如何进行恢复? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-28 11:42 |只看该作者 |倒序浏览
环境:NBU 7.5 Server+两台节点搭建的oracle 11G RAC作为客户端

在nbu server里,新建一个策略备份数据库和归档日志,

我想问的是,如何进行恢复的操作呢?在nbu 界面里没有恢复的操作选项啊

在备份的时候 需要调用客户端的备份脚本hot_database_backup.sh,那么如果要恢复,是不是得调用客户端的恢复脚本?

如果要调用客户端的恢复脚本,这个脚本在什么位置?

我在NBU安装目录没发现有恢复 restore的脚本

root@db1:/usr/openv/netbackup/ext/db_ext/oracle/samples/rman# ls -al
total 179
drwxr-xr-x   2 root     bin           10 Nov 27 17:59 .
drwxr-xr-x   5 root     bin            8 Nov 27 17:59 ..
-r-xr-xr-x   1 root     bin        11719 Feb  8  2012 cold_database_backup.sh
-r-xr-xr-x   1 root     bin        12520 Feb  8  2012 cold_duplex_database_backup_full.sh
-r-xr-xr-x   1 root     bin         7187 Feb  8  2012 database_restore.sh
-r-xr-xr-x   1 root     bin        11595 Feb  8  2012 hot_database_backup.sh
-r-xr-xr-x   1 root     bin        10040 Feb  8  2012 hot_database_backup_proxy.sh
-r-xr-xr-x   1 root     bin        11170 Feb  8  2012 hot_tablespace_backup.sh
-r-xr-xr-x   1 root     bin         8590 Feb  8  2012 hot_tablespace_backup_proxy.sh
-r-xr-xr-x   1 root     bin        10154 Feb  8  2012 pit_database_restore.sh


这个脚本是得自己手动写吗?

下面是hot_database_backup.sh脚本的内容

CUSER=`id |cut -d"(" -f2 | cut -d ")" -f1`
RMAN_LOG_FILE=${0}.out
if [ -f "$RMAN_LOG_FILE" ]
then
        rm -f "$RMAN_LOG_FILE"
fi
echo >> $RMAN_LOG_FILE
chmod 666 $RMAN_LOG_FILE
echo Script $0 >> $RMAN_LOG_FILE
echo ==== started on `date` ==== >> $RMAN_LOG_FILE
echo >> $RMAN_LOG_FILE
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db
export ORACLE_HOME
ORACLE_SID=orcl1
export ORACLE_SID
ORACLE_USER=oracle
TARGET_CONNECT_STR=sys/oracle
RMAN=$ORACLE_HOME/bin/rman
echo >> $RMAN_LOG_FILE
echo   "RMAN: $RMAN" >> $RMAN_LOG_FILE
echo   "ORACLE_SID: $ORACLE_SID" >> $RMAN_LOG_FILE
echo   "ORACLE_USER: $ORACLE_USER" >> $RMAN_LOG_FILE
echo   "ORACLE_HOME: $ORACLE_HOME" >> $RMAN_LOG_FILE
echo  >> $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_SERV: $NB_ORA_SERV" >> $RMAN_LOG_FILE
echo   "NB_ORA_POLICY: $NB_ORA_POLICY" >> $RMAN_LOG_FILE
echo >> $RMAN_LOG_FILE
if [ "$NB_ORA_FULL" = "1" ]
then
        echo "Full backup requested" >> $RMAN_LOG_FILE
        BACKUP_TYPE="INCREMENTAL LEVEL=0"

elif [ "$NB_ORA_INCR" = "1" ]
then
        echo "Differential incremental backup requested" >> $RMAN_LOG_FILE
        BACKUP_TYPE="INCREMENTAL LEVEL=1"

elif [ "$NB_ORA_CINC" = "1" ]
then
        echo "Cumulative incremental backup requested" >> $RMAN_LOG_FILE
        BACKUP_TYPE="INCREMENTAL LEVEL=1 CUMULATIVE"

elif [ "$BACKUP_TYPE" = "" ]
then
        echo "Default - Full backup requested" >> $RMAN_LOG_FILE
        BACKUP_TYPE="INCREMENTAL LEVEL=0"
fi
CMD_STR="
ORACLE_HOME=$ORACLE_HOME
export ORACLE_HOME
ORACLE_SID=$ORACLE_SID
export ORACLE_SID
$RMAN target $TARGET_CONNECT_STR nocatalog msglog $RMAN_LOG_FILE append << EOF
RUN {
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
BACKUP
    $BACKUP_TYPE
    SKIP INACCESSIBLE
    TAG hot_db_bk_level0
    FILESPERSET 5
    # recommended format
    FORMAT 'bk_%s_%p_%t'
    DATABASE;
    sql 'alter system archive log current';
RELEASE CHANNEL ch00;

ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
BACKUP
   filesperset 20
   FORMAT 'al_%s_%p_%t'
   ARCHIVELOG ALL DELETE INPUT;
RELEASE CHANNEL ch00;

ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';
BACKUP
    # recommended format
    FORMAT 'cntrl_%s_%p_%t'
    CURRENT CONTROLFILE;
RELEASE CHANNEL ch00;
}
EOF
"
if [ "$CUSER" = "root" ]
then
    su - $ORACLE_USER -c "$CMD_STR" >> $RMAN_LOG_FILE
    RSTAT=$?
else
    /usr/bin/sh -c "$CMD_STR" >> $RMAN_LOG_FILE
    RSTAT=$?
Fi

if [ "$RSTAT" = "0" ]
then
    LOGMSG="ended successfully"
else
    LOGMSG="ended in error"
fi

echo >> $RMAN_LOG_FILE
echo Script $0 >> $RMAN_LOG_FILE
echo ==== $LOGMSG on `date` ==== >> $RMAN_LOG_FILE
echo >> $RMAN_LOG_FILE

exit $RSTAT

论坛徽章:
0
2 [报告]
发表于 2012-11-28 22:26 |只看该作者
备份模板的脚本同一个目录下也有恢复模板的脚本啊

论坛徽章:
0
3 [报告]
发表于 2012-11-29 15:36 |只看该作者
nbu的恢复方式很麻烦的,并且恢复时采用oracle的RMAN命令行进行恢复。方便直接。还不如采用命令行恢复呢

论坛徽章:
0
4 [报告]
发表于 2012-11-29 20:37 |只看该作者
回复 2# myguangzhou


    usr/openv/netbackup/ext/db_ext/oracle/samples/rman下只有个pit_database_restore.sh是恢复的,是这个脚本吗

论坛徽章:
0
5 [报告]
发表于 2012-12-25 16:17 |只看该作者
使用oracle rman进行恢复,恢复数据库脚本。
RMAN> run{
2> allocate channel c1 type sbt_tape;
3> send 'nb_ora_serv=XX,nb_ora_client=XX';
4> restore database;
5> }

恢复spfile文件、控制文件和这个差不多的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP