NBU异机恢复_Oracle
NBU异机恢复Oracle操作步骤

NBU异机恢复Oracle操作步骤NBU 异机恢复Oracle操作步骤Hehuyi_In 于 2020-05-15 22:36:22 发布 1507 收藏 5分类专栏: Oracle 备份还原版权Oracle同时被 2 个专栏收录206 篇⽂章4 订阅订阅专栏备份还原31 篇⽂章0 订阅订阅专栏⼀、准备⼯作1. DBA恢复服务器安装与原库相同版本的数据库软件、NBU客户端双向开通到NBU备份服务器的1556、13724、13720、13782、13790端⼝的防⽕墙策略(应该只要1556和13724,但为避免还原时出现其他异常,建议都开)/etc/hosts⽂件添加NBU备份服务器主机名及原库主机名,ping 主机名测试能否解析成功确保恢复服务器磁盘空间⾜够2. NBU管理员/etc/hosts⽂件添加待恢复服务器主机名,ping 主机名测试能否解析成功,若不成功可使⽤bpclntcmd -clear_host_cache清除nbu端dns缓存配置恢复授权,确保备份机器和还原机器都在列表中,且允许还原Host Properties->Mater server->Client Attributes若是异机恢复,需在NBU给备份机器和恢复机器增加异机恢复的权限cd /usr/openv/netbackup/db/altnamestouch 主机名检查异机恢复参数NBUInstallPath/NetBackup/bin/admincmd/bpgetconfig | grep "DISALLOW_CLIENT"#输出DISALLOW_CLIENT_LIST_RESTORE = NODISALLOW_CLIENT_RESTORE = NO#若如上两个参数为YES,则表⽰禁⽌进⾏异机恢复,需要将两个参数改成NO,为保证参数⽣效,建议修改后重启主服务器上的NBU服务NBUInstallPath/NetBackup/bin/bp.kill_allNBUInstallPath/NetBackup/bin/bp.start_all⼆、数据恢复以下均在待恢复服务器操作1. 检查备份⽂件情况/usr/openv/netbackup/bin/bplist -C iZwz94g9fehswlnzd19jv2Z -t 4 -b -l -R /# -C后跟备份库主机名;-t后跟还原类型,4是oracle标志;-b指列出备份⽂件的⽇期和时间;-l指列出备份⽂件的详细信息;-R以递归的⽅式显⽰⼦⽬录。
63NBU备份系统恢复方案v1.1

NBU备份系统恢复方案v1.1X年7月25日目录一、文档信息 (5)1.1文档属性 (5)二、应急恢复预案体系的建立 (6)2.1信息系统突发事件的分级 (6)2.2应急预案启动流程 (7)2.3信息系统数据恢复处理流程规划 (9)2.3.1 数据灾难的一般性处理方法 (9)2.3.2 灾难恢复措施 (9)2.3.3 应用服务器故障处理流程 (10)2.3.4 服务器硬件故障处理流程 (11)三、恢复演练及数据验证工作内容 (12)3.1恢复演练工作内容 (12)3.1.1 数据恢复测试要求 (12)3.1.2 数据恢复抽检策略 (13)3.1.3 灾备演练要求........................................................................................................................................ 错误!未定义书签。
3.1.4 双机演练要求........................................................................................................................................ 错误!未定义书签。
3.2数据恢复工作内容 (13)3.2.1 数据恢复要求 (13)3.2.2 数据恢复记录表格 (13)四、恢复演练标准化 (15)4.1演练目的 (15)4.2环境介绍....................................................................................................................................................... 错误!未定义书签。
NBUoracle备份配置

NBUoracle备份配置1、建⽴连接[root@localhost ~]# su - oracle[oracle@localhost ~]$ cd /usr/openv/netbackup/bin[oracle@localhost bin]$ ./oracle_link2012年 08⽉ 25⽇星期六 09:43:28 CSTAll Oracle instances should be shutdown before running this script.Please log into the Unix system as the Oracle owner for running this scriptDo you want to continue? (y/n) [n] yLIBOBK path: /usr/openv/netbackup/binORACLE_HOME: /orcl/oracleOracle version: 10.2.0.1.0Platform type: i686Linking LIBOBK:ln -s /usr/openv/netbackup/bin/libobk.so /orcl/oracle/lib/libobk.soDonePlease check the trace file located in /tmp/make_trace.4459to make sure the linking process was successful.2、创建备份脚本[root@localhost ~]# mkdir -p /usr/openv/netbackup/script[root@localhost ~]# cd /usr/openv/netbackup/ext/db_ext/oracle/samples/rman[root@localhost rman]# lscold_database_backup.sh database_restore.sh hot_tablespace_backup.sh cold_duplex_database_backup_full.sh hot_database_backup.sh pit_database_restore.sh [root@localhost rman]# cp hot_database_backup.sh /usr/openv/netbackup/script/[root@localhost rman]# cd /usr/openv/netbackup/script/[root@localhost script]# lshot_database_backup.sh[root@localhost script]# mv hot_database_backup.sh rman.sh[root@localhost script]# chmod o+x rman.sh[root@localhost script]# vi rman.sh#!/bin/sh# $Header: hot_database_backup.sh,v 1.2 2002/08/06 23:51:42 $#bcpyrght#***************************************************************************#* $VRTScprght: Copyright 1993 - 2008 Symantec Corporation, All Rights Reserved $ * #***************************************************************************#ecpyrght## ---------------------------------------------------------------------------# hot_database_backup.sh# ---------------------------------------------------------------------------# This script uses Recovery Manager to take a hot (inconsistent) database# backup. A hot backup is inconsistent because portions of the database are# being modified and written to the disk while the backup is progressing.# You must run your database in ARCHIVELOG mode to make hot backups. It is# assumed that this script will be executed by user root. In order for RMAN# to work properly we switch user (su -) to the oracle dba account before# execution. If this script runs under a user account that has Oracle dba# privilege, it will be executed using this user's account.# ---------------------------------------------------------------------------# ---------------------------------------------------------------------------# Determine the user which is executing this script.# ---------------------------------------------------------------------------CUSER=`id |cut -d"(" -f2 | cut -d ")" -f1`# ---------------------------------------------------------------------------# Put output in <this file name>.out. Change as desired.# Note: output directory requires write permission.# ---------------------------------------------------------------------------RMAN_LOG_FILE=${0}.out# ---------------------------------------------------------------------------# You may want to delete the output file so that backup information does# not accumulate. If not, delete the following lines.# ---------------------------------------------------------------------------if [ -f "$RMAN_LOG_FILE" ]rm -f "$RMAN_LOG_FILE"fi# -----------------------------------------------------------------# Initialize the log file.# -----------------------------------------------------------------echo >> $RMAN_LOG_FILEchmod 666 $RMAN_LOG_FILE# ---------------------------------------------------------------------------# Log the start of this script.# ---------------------------------------------------------------------------echo Script $0 >> $RMAN_LOG_FILEecho ==== started on `date` ==== >> $RMAN_LOG_FILEecho >> $RMAN_LOG_FILE# ---------------------------------------------------------------------------# Replace /db/oracle/product/ora81, below, with the Oracle home path. # ---------------------------------------------------------------------------ORACLE_HOME=/u01/app/oracle/product/11.2.0/export ORACLE_HOMEOracle HOME⽬录,可通过env命令查出# ---------------------------------------------------------------------------# Replace ora81, below, with the Oracle SID of the target database. # ---------------------------------------------------------------------------ORACLE_SID=orclexport ORACLE_SIDOracle实例名# ---------------------------------------------------------------------------# Replace ora81, below, with the Oracle DBA user id (account).# ---------------------------------------------------------------------------ORACLE_USER=oracleOracle系统账户# ---------------------------------------------------------------------------# Set the target connect string.# Replace "sys/manager", below, with the target connect string.# ---------------------------------------------------------------------------TARGET_CONNECT_STR=sys/Qweasd123Sys⽤户及其密码# ---------------------------------------------------------------------------# Set the Oracle Recovery Manager name.# ---------------------------------------------------------------------------RMAN=$ORACLE_HOME/bin/rman# ---------------------------------------------------------------------------# Print out the value of the variables set by this script.# ---------------------------------------------------------------------------#中间代码不⽤更改,此处略CMD_STR="ORACLE_HOME=$ORACLE_HOMEexport ORACLE_HOMEORACLE_SID=$ORACLE_SIDexport ORACLE_SID$RMAN target $TARGET_CONNECT_STR nocatalog msglog $RMAN_LOG_FILE append << EOFRUN {ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';ALLOCATE CHANNEL ch01 TYPE 'SBT_TAPE';echo send 'NB_ORA_POLICY=your_policy, NB_ORA_SERV=your_serverí';发送备份信息给相对应的备份策略,当每⼀台Oracle只有⼀个NBU备份策略时,次句可以不写BACKUP$BACKUP_TYPESKIP INACCESSIBLETAG hot_db_bk_level0FILESPERSET 5# recommended formatFORMAT 'bk_%s_%p_%t'DATABASE;sql 'alter system archive log current';RELEASE CHANNEL ch00;RELEASE CHANNEL ch01;# backup all archive logsALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';ALLOCATE CHANNEL ch01 TYPE 'SBT_TAPE';echo send 'NB_ORA_POLICY=your_policy, NB_ORA_SERV=your_serverí';发送备份信息给相对应的备份策略,当每⼀台Oracle只有⼀个NBU备份策略时,次句可以不写BACKUPfilesperset 20FORMAT 'al_%s_%p_%t'ARCHIVELOG ALL;RELEASE CHANNEL ch00;RELEASE CHANNEL ch01;ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';DELETE NOPROMPT ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; RELEASE CHANNEL ch00;原脚本备份后直接删除归档⽇志,可以如上编写,删除7天前的归档⽇志## Note: During the process of backing up the database, RMAN also backs up the# control file. This version of the control file does not contain the# information about the current backup because "nocatalog" has been specified.# To include the information about the current backup, the control file should# be backed up as the last step of the RMAN section. This step would not be# necessary if we were using a recovery catalog.#ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE';BACKUP# recommended formatFORMAT 'cntrl_%s_%p_%t'CURRENT CONTROLFILE;RELEASE CHANNEL ch00;}EOF"# Initiate the command stringif [ "$CUSER" = "root" ]thensu - $ORACLE_USER -c "$CMD_STR" >> $RMAN_LOG_FILERSTAT=$?else/usr/bin/sh -c "$CMD_STR" >> $RMAN_LOG_FILERSTAT=$?fi# ---------------------------------------------------------------------------# Log the completion of this script.# ---------------------------------------------------------------------------if [ "$RSTAT" = "0" ]thenLOGMSG="ended successfully"elseLOGMSG="ended in error"fiecho >> $RMAN_LOG_FILEecho Script $0 >> $RMAN_LOG_FILEecho ==== $LOGMSG on `date` ==== >> $RMAN_LOG_FILEecho >> $RMAN_LOG_FILEexit $RSTAT3、创建备份策略3.1 选择策略类型和存储位置3.2 创建备份策略Frequency: 备份周期 Retention: 保留周期策略时间表,默认的Default-Application-Backup不要随意更改,⼀般只更改保留周期。
NBU异机恢复windows oracle11g

2) 查看归档日志是否开启
archive log list
这里显示归档日志未开启。
3) 开启归档日志
关闭数据库:shutdown immediate;
启动数据库为 mount 状态:startup mount;
开启归档模式:alter database archivelog;
打开数据库查询:alter database open; archive log list;
2) 登录 RMAN rman target / nocatalog;
3) 关闭数据库 shutdown immediate;
4) 启动数据库为 nomount 状态 startup nom需要和源端 wxf-wos 的 dbid 一样:1763780182) set dbid=1763780182;
NBU 异机恢复 oracle
1. 相关信息表 一、网络信息
名称 NBU Master Server Oracle 源客户端 Oracle 目标客户端 主机名 wxf-wns wxf-wos wxf-wog IP 172.16.202.204 172.16.202.205 172.16.202.206 操作系统 Windows server 2008 R2 standard Windows server 2008 R2 standard Windows server 2008 R2 standard
二、 查看源端(wxf-wos)一些相关信息
查看 SID:select name from v$database;
查看 dbid:select dbid from v$database;
三、 查看目标端(wxf-wog)一些相关信息
1) 查看 oracle 的 SID
NBU恢复测试

NBU恢复测试NBU裸机恢复RedHat 4.7,ORACLE 10G数据库备份恢复测试方案田方2011.5.28目录方案概述 (3)测试环境 (3)裸机恢复 (4)裸机恢复的定义及实现裸机恢复的定义 (4)裸机恢复的实现 (5)RedHat Linux 下Oracle 10g数据库数据备份恢复 (7)备份步骤: (7)恢复步骤 (9)方案概述服务器突发故障,如:主机物理损坏、系统盘物理损坏、操作系统不能启动等都可能整个业务系统长时间中止服务、数据库服务器数据丢失,无数的重要资料无法访问。
那么这时候,你就需要一个能快速解决相遇问题的方法,而Symantec NetBackup 7.0 (简称 NBU)将能为您提供一种快速而有效的解决方案。
对于系统故障,你可能通过使用是NBU其中一个非常重要的功能:裸机恢复(Bare Metal Restore 简称BMR来快速延续对用户提供业务功能和访问数据。
一但发生故障,你可以使用一张NBU预先生成的光盘引导系统启动,或者配置您的服务器从网络启动,这台坏掉的机器就可以和NBU的裸机恢复服务联系起来,引导系统启动,将备份过的数据拷贝到该机器,使之恢复到最新备份时候的状态,这个所耗的时间仅仅与用户本地的网络速度和恢复文件大小有关系,一般来说不会超过30分钟,您的机器就又可以正常使用了。
而且您还可以在BMR 配置中指定好了您操作系统所需要的系统补丁和一些重要的程序,NBU在恢复系统的时候,也会自动将这些系统补丁文件和重要程序安装到新的机器上,让您可以在最短的时间内,恢复系统到您需要的状态。
对于数据库数据的丢失,则您可以通过使用NBU的另一个功能:NBU for Oracle.测试环境主机用途主机名称/简称IP地址操作系统系统软件概况备注NBU备份服务器NBU-Server/Server192.168.0.2 REEL5.4Master serverMedia serverBMR serverBMR Boot server数据库服务器Orcl-client/Client192.168.0.13REEL4.7ORACLE 10G 数据库NBU For Oracle代理裸机恢复裸机恢复的定义及实现裸机恢复的定义裸机恢复(Bare Metal Restore 简称BMR),是NBU其中一个非常重要的功能,目的是提供给用户裸机恢复的功能。
Linux_oracle数据库的备份与恢复

Linux_oracle数据库的备份与恢复1 数据库备份和恢复(备份和恢复均已做成脚本自动运行,下列操作供参考,请不要在生产机上做测试) 1)数据库备份:◆将dbexp.parm,dbexp.sh 拷贝至/home/oracle/backup/.以oracle用户登录系统$ cd /home/oracle/backup$ dos2unix *$ chmod 755 dbexp.sh◆手工执行备份,用oracle用户登录:$ cd /home/oracle/backup$ ./dbexp.sh◆自动执行备份,用root用户登录:#crontab -e 00 01 * * * su - oracle -c "/home/oracle/backup/dbexp.sh"2)数据库恢复:以oracle用户登录系统◆删除用户:sqlplus /nolog>connect / as sysdba;>drop user center cascade;>create user center identified by center;>grant connect,resource,dba to center◆恢复数据库$imp center/center full=y grants=y INDEXES=y constraints=y LOG=/tmp/backup.log rows=y ignore=y file=xxx(xxx--为以前备份的数据文件,如checkid_20041123.dat)oracle数据库的备份与恢复原理及方法:导出(备份)exp 用户名/密码@服务名file=d:daochu.dmp (rows=no(导出空结构)) 导入(恢复)imp 用户名/密码@服务名file=d:daochu.dmp fromuser=原用户名touser=新用户名---- 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。
oracle数据库还原的详细流程

oracle数据库还原的详细流程
Oracle数据库还原的详细流程如下:
1. 关闭Oracle数据库服务:在开始还原之前,需要确保Oracle数据库服务已经关闭。
这样可以避免在还原过程中发生数据冲突或损坏。
2. 确认数据库备份:在开始还原之前,需要确认数据库的备份情况。
数据库的备份可以分为完全备份和增量备份两种。
完全备份是指对整个数据库进行备份,而增量备份是在完全备份的基础上,对新增或修改的数据进行备份。
可以通过查看备份记录或者与负责备份的人员进行沟通来确认备份情况。
3. 选择合适的还原方式:根据备份文件的位置和可用资源,选择适合的还原方式。
例如,如果备份文件在本地磁盘上,可以选择磁盘还原;如果备份文件在云端,可以选择云存储还原。
4. 执行还原操作:根据选择的还原方式,执行相应的操作。
例如,在磁盘还原中,需要将备份文件复制到目标磁盘中。
在云存储还原中,需要将备份文件从云存储下载到本地或直接在云平台上进行还原。
5. 启动Oracle数据库服务:完成还原后,启动Oracle数据库服务,验证数据是否正确加载并可用。
请注意,以上步骤仅供参考,具体操作可能因实际情况而有所不同。
在进行数据库还原时,建议参考Oracle官方文档或咨询专业人士以获取更准确的信息和指导。
oracle备份如何到异机还原

oracle备份如何到异机还原作者:ocpyang情景描述:有朋友问,MSSQLSERVER将数据库备份还原到其它机器很方便,基本就是傻瓜式操作,oracle有控制文件、参数文件一堆东西,觉得还原很复杂;其实不然,我抽出了点时间,简单演示下案例,朋友们,参考下!为了简单快速,我才用RMAN备份和还原--说明:(1).RMAN备份到异机恢复的时候,db_name需要相同。
如果说要想改成其他的实例名,可以在恢复成功后,用nid命令修改。
实例名的信息会记录到控制文件里,所以如果在恢复的时候,如果实例名不一致,恢复的时候会报错。
(2).恢复的路径和源库不一致时,就需要在restore命令中使用set 命令指定新位置,并且使用switch datafile all将变更信息更新的到控制文件中。
测试环境:源数据库服务器A,安装在E,备份目录已在E盘;源数据库服务器B,安装在F盘.------------------------------------一、源数据库准备工作--------------------------------------1. 查询DBIDSQL> select name,dbid from v$database;NAME DBID--------- ----------ORCL 1320546556--2. 备份源数据DBrun {configure retention policy to recovery window of 14 days;configure controlfileautobackup on; --自动开启控制文件备份configure controlfileautobackup format for device type disk to'E:\backup\controlfile\bak_%F';allocate channel c1 device type disk format 'E:\backup\data\bak_%u'; allocate channel c2 device type disk format 'E:\backup\data\bak_%u'; sql 'alter system archive log current';backup incremental level=0 database skip inaccessibleplus archivelogfilesperset 20delete all input;release channel c1;release channel c2;}allocate channel for maintenance device type disk;crosscheck backupset;delete noprompt obsolete;--或run {configure retention policy to recovery window of 14 days;allocate channel c1 device type disk format 'E:\backup\data\bak_%u'; allocate channel c2 device type disk format 'E:\backup\data\bak_%u'; sql 'alter system archive log current';backup incremental level=0 database skip inaccessibleplus archivelogfilesperset 20delete all input;--手动直接指明备份文件名和路径backup current controlfile tag='bak_ctrollfile'format='E:\backup\controlfile\bak_ctl_file_%U_%T';backup spfile tag='bak_spfile' format='E:\backup\controlfile\bak_spfile_%U_%T'; release channel c1;release channel c2;}allocate channel for maintenance device type disk;crosscheck backupset;delete noprompt obsolete;--3.手动备份spfilecreatepfile='E:\backup\inittest.ora' from spfile;------------------------------------二、目标库准备工作:---------------------------------------步骤1. 创建口令文件--如果有就不需要新建.orapwd file=F:\app\Administrator\product\11.2.0\dbhome_1\database\PWDorcl.ora password=password--步骤2.恢复参数文件--方法1.源数据库spfile并拷贝到B数据库服务器\\192.168.2.25\e$\backup\inittest.ORA复制到E:\bk\inittest.ORA--步骤3.编辑参数文件中的文件路径如路径和原来一样,则不需修改eg:- *_DUMP_DEST- LOG_ARCHIVE_DEST*- CONTROL_FILES---实例:orcl.__db_cache_size=939524096orcl.__java_pool_size=16777216orcl.__large_pool_size=16777216orcl.__oracle_base='F:\app\Administrator'#修改路径orcl.__pga_aggregate_target=855638016orcl.__sga_target=2550136832orcl.__shared_io_pool_size=0orcl.__shared_pool_size=1526726656orcl.__streams_pool_size=16777216*.audit_file_dest='F:\app\Administrator\admin\orcl\adump' #修改路径*.audit_trail='db'*.compatible='11.2.0.0.0'#修改路径*.control_files='F:\app\Administrator\oradata\orcl\control01.ctl','F:\app\Administrator\orada ta\orcl\control02.ctl','F:\app\Administrator\oradata\orcl\control03.ctl'*.db_block_size=8192*.db_domain=''*.db_name='orcl'*.db_recovery_file_dest='F:\arch' #修改路径*.db_recovery_file_dest_size=6442450944*.diagnostic_dest='F:\app\Administrator' #修改路径*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'*.log_archive_dest_1='location=f:\arch' #修改路径*.nls_date_format='yyyy-mm-ddhh:mi:ss'*.open_cursors=300*.optimizer_capture_sql_plan_baselines=TRUE*.pga_aggregate_target=845152256*.processes=150*.remote_login_passwordfile='EXCLUSIVE'*.sga_target=2536505344*.skip_unusable_indexes=TRUE*.undo_tablespace='UNDOTBS1'--步骤4.重启实例,使用已编辑好的参数文件将用pfile将B数据库服务器启动到nomout状态rman target /startupnomountpfile='e:\bk\inittest.ora'--步骤5.恢复控制文件,装载数据库rman target /setdbid 1320546556restorecontrolfile from 'e:\bk\controlfile\BAK_CTL_FILE_6LO6SON4_1_1_20130412';启动restore 于2013-04-11 13:58:58使用目标数据库控制文件替代恢复目录分配的通道: ORA_DISK_1通道ORA_DISK_1: SID=129 设备类型=DISK通道ORA_DISK_1: 正在还原控制文件通道ORA_DISK_1: 还原完成, 用时: 00:00:01输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL02.CTL输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL03.CTL完成restore 于2013-04-11 13:59:00--步骤6.将DB启动到mout状态alter database mount;数据库已装载释放的通道: ORA_DISK_1--加载备份目录CATALOG START WITH 'E:\bk';搜索与样式E:\bk 匹配的所有文件数据库未知文件的列表====================================文件名: E:\bk\controlfile\BAK_C-1320546556-20130411-03文件名: E:\bk\controlfile\BAK_CTL_FILE_65O6QILO_1_1_20130411 文件名: E:\bk\controlfile\BAK_SPFILE_66O6QILQ_1_1_20130411文件名: E:\bk\data\BAK_60O6QIGV文件名: E:\bk\data\BAK_61O6QIGV文件名: E:\bk\data\BAK_62O6QIH1文件名: E:\bk\data\BAK_63O6QIH1文件名: E:\bk\data\BAK_64O6QILM是否确实要将上述文件列入目录(输入YES 或NO)? yes正在编制文件目录...目录编制完毕已列入目录的文件的列表======================文件名: E:\bk\controlfile\BAK_C-1320546556-20130411-03文件名: E:\bk\controlfile\BAK_CTL_FILE_65O6QILO_1_1_20130411 文件名: E:\bk\controlfile\BAK_SPFILE_66O6QILQ_1_1_20130411文件名: E:\bk\data\BAK_60O6QIGV文件名: E:\bk\data\BAK_61O6QIGV文件名: E:\bk\data\BAK_62O6QIH1文件名: E:\bk\data\BAK_63O6QIH1文件名: E:\bk\data\BAK_64O6QILM--步骤7.restore 数据库7.1 恢复目录不同的情况:到Target 库查询一下:SQL> select trim(file_id),trim(file_name) from dba_data_files ORDER BY FILE_ID ASC;1 E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF2 E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF3 E:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF4 E:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF6 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY02.DBF7 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY03.DBF8 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY04.DBF9 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY05.DBF11 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY06.DBF12 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY07.DBF13 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY08.DBF14 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY09.DBF15 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY10.DBF16 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY01.DBF17 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY11.DBF18 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY12.DBF19 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY13.DBF20 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY14.DBF21 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY15.DBF22 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY16.DBF23 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY17.DBF24 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY18.DBF25 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY19.DBF26 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY20.DBFSQL>select trim(file_id),trim(file_name) from dba_temp_files;1 E:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP01.DBFselect 'SET NEWNAME FOR DATAFILE'|| ' '||file_id||' '||'TO'|| ' '||''''||trim(file_name)||'''' ||';' from dba_data_files ORDER BY FILE_ID ASC;---如下实例:RUN{# rename the datafilesSET NEWNAME FOR DATAFILE 1 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF'; SET NEWNAME FOR DATAFILE 2 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF'; SET NEWNAME FOR DATAFILE 3 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF'; SET NEWNAME FOR DATAFILE 4 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF'; SET NEWNAME FOR DATAFILE 6 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY02.DBF'; SET NEWNAME FOR DATAFILE 7 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY03.DBF'; SET NEWNAME FOR DATAFILE 8 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY04.DBF'; SET NEWNAME FOR DATAFILE 9 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY05.DBF'; SET NEWNAME FOR DATAFILE 11 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY06.DBF'; SET NEWNAME FOR DATAFILE 12 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY07.DBF'; SET NEWNAME FOR DATAFILE 13 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY08.DBF'; SET NEWNAME FOR DATAFILE 14 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY09.DBF'; SET NEWNAME FOR DATAFILE 15 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY10.DBF'; SET NEWNAME FOR DATAFILE 16 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY01.DBF'; SET NEWNAME FOR DATAFILE 17 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY11.DBF';SET NEWNAME FOR DATAFILE 18 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY12.DBF';SET NEWNAME FOR DATAFILE 19 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY13.DBF';SET NEWNAME FOR DATAFILE 20 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY14.DBF';SET NEWNAME FOR DATAFILE 21 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY15.DBF';SET NEWNAME FOR DATAFILE 22 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY16.DBF';SET NEWNAME FOR DATAFILE 23 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY17.DBF';SET NEWNAME FOR DATAFILE 24 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY18.DBF';SET NEWNAME FOR DATAFILE 25 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY19.DBF';SET NEWNAME FOR DATAFILE 26 TO'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY20.DBF';SQL "ALTER DATABASE RENAME FILE''E:\app\Administrator\oradata\orcl\REDO01.LOG''TO ''F:\app\Administrator\oradata\orcl\REDO01.LOG'' ";SQL "ALTER DATABASE RENAME FILE''E:\app\Administrator\oradata\orcl\REDO02.LOG''TO ''F:\app\Administrator\oradata\orcl\REDO02.LOG'' ";SQL "ALTER DATABASE RENAME FILE''E:\app\Administrator\oradata\orcl\REDO03.LOG''TO ''F:\app\Administrator\oradata\orcl\REDO03.LOG'' ";RESTORE DATABASE;SWITCH DATAFILE ALL;}对switch datafile all的说明:--对于nocatalog模式下,rman备份的信息是保存在控制文件里的,包括文件的路径信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通过NBU将Oracle恢复到异机上 (2)1.1备份任务检查: (2)1.2数据库空间检查 (2)1.3恢复服务器(testdb)软件安装: (3)1.4NBU 配置更改: (3)1.5数据库恢复初始 (3)1.6确定数据文件路径: (4)1.7实现数据库恢复: (5)1.7.1重新创建temporary tablespace (6)1.7.2创建listener.ora和tnsnames.ora文件 (6)通过NBU将Oracle恢复到异机上本文描述的是使用VERITAS的备份软件,将备份的Oracle数据库数据,恢复到另一台服务器上。
整个恢复过程的时间,与备份数据库的数据量大小相关、与恢复前的准备工作相关,包括如下几个过程:这里设定:NBU master Server: fzjc原服务器为:YXDB_A_MEDIA恢复主机为:testdb任务设定如下:通过NBU master server fzjc,将备份的YXDB_A_MEDIA上的Oracle,恢复到到testdb上。
1.1 备份任务检查:1.首先YXDB_A_MEDIA 的Oracle在NBU上备份成功。
打开fzjc 上NBU Console,查看YXDB_A_MEDIA相关Oracle 备份的策略和定时备份任务情况,确定Oracle备份任务执行成功无误。
2.确认备份Master Server能够操作磁带库,能够备份数据到磁带上。
1.2 数据库空间检查1.为了将数据数据恢复到其他服务器上,必须确定原数据库整个数据库占用磁盘空间大小:在YXDB_A_MEDIA上以系统管理员身份登录:A = select sum(bytes)/1024/1024 "Total redo size in MB" from v$logfile;B = select sum(bytes)/1024/1024 "Total DB file size in MB" from v$datafile;C > 归档日志目录(/arch)空间大小(该空间应尽可能大)2. 确定testdb上的可用磁盘空间:(1)NBU 软件安装需要>500M(2)Oracle 软件安装需要>1000M可用空间> A + B + C + 2G1.3 恢复服务器(testdb)软件安装:1. 在testdb上创建oracle用户、dba组,该用户的uid、gid必须与YXDB_A_MEDIA上的oracle用户相同。
2.安装与YXDB_A_MEDIA上同版本的Oracle软件(9.2.05),不创建instance,确认$ORACLE_HOME。
3.安装NBU Client 端,在fzjc上建立测试策略,能够备份该客户端上的文件系统数据。
4.安装NBU Oracle Agent,以oracle 用户登陆,执行:/usr/openv/netbackup/bin/oracle_link。
1.4 NBU 配置更改:1. 在NBU master服务器fzjc上创建文件install_path/netbackup/db/altnames/No.Restrictions2. 在testdb上,在$ORACLE_HOME/bp.conf 中设置SERVER=fzjc。
3. 在testdb上,设置环境变量ORACLE_SID = STGD; export ORACLE_SIDNB_ORA_CLIENT = YXDB_A_MEDIA; export NB_ORA_CLIENT1.5 数据库恢复初始1. 拷贝YXDB_A_MEDIA上的$ORACLE_HOME/dbs/initSTGD.ora到testdb服务器上$ORACLE_HOME/dbs/initSTGD.ora2.修改$ORACLE_HOME/dbs/initSTGD.ora :(1) control_files = ("/data/oradata/STGD/control01.ctl ")(2) log_archive_dest="/arch"(3) sort_area_size=200000003. 创建相关目录:(1) 设置$ORACLE_BASE=/data/oradata(2) 创建$ORACLE_BASE/STGD/bdump、$ORACLE_BASE/STGD/cdump、$ORACLE_BASE/STGD/udump、/arch目录4.创建testdb上的数据库启动control file:(1) 以sysdb登陆YXDB_A_MEDIA上的oracle(STGD):SQL>alter database backup controlefile to ‘/tmp/control01.ctl’;(2) 拷贝该文件(control01.ctl)到testdb服务器上的$ORACLE_BASE/STGD/control01.ctl ;5. 设置oracle数据库口令文件:在testdb上以oracle用户登陆,$orapwd file=$ORACLE_HOME/dbs/orapwSTGD password=oracle1.6 确定数据文件路径:由于原服务器YXDB_A_MEDIA上,所有数据文件都使用裸设备,而在testdb 上则使用数据文件(*.dbf),因此需要确定数据文件与裸设备的对应关系;在testdb上,以oracle用户登陆,以sysdba登陆oracle:SQL>start mount;SQL>echo on;SQL>spool /tmp/dbfile.txtSQL>select file#,name from v$datafile;SQL>quit;1.7 实现数据库恢复:在testdb上,以oracle用户登陆:$rman nocatalog target / cmdfile restore.rcv msglog restore.log其中restore.rcv 参见下文,该文件中的“set newname for datafile 1 to '/data/oradata/STGD/system01.dbf';”等修改于1.6中的dbfile.txt。
附一:restore.rcv脚本:#### This file to used rman to restore databaserun {allocate channel ch00 type 'sbt_tape'parms="ENV=(NB_ORA_SERV=fzjc,NB_ORA_CLIENT=YXDB_A_MEDIA)";allocate channel ch01 type 'sbt_tape'parms="ENV=(NB_ORA_SERV=fzjc,NB_ORA_CLIENT=YXDB_A_MEDIA)";SEND 'NB_ORA_SERV=fzjc,NB_ORA_CLIENT=YXDB_A_MEDIA';set newname for datafile 1 to '/data/oradata/STGD/system01.dbf';set newname for datafile 2 to '/data/oradata/STGD/undotbs01.dbf';set newname for datafile 3 to '/data/oradata/STGD/indx01.dbf';set newname for datafile 4 to '/data/oradata/STGD/user01.dbf';set newname for datafile 5 to '/data/oradata/STGD/tools01.dbf';set newname for datafile 6 to '/data/oradata/STGD/yd_data01.dbf';set newname for datafile 7 to '/data/oradata/STGD/yd_lrob01.dbf';set newname for datafile 8 to '/data/oradata/STGD/yd_hstr01.dbf';set newname for datafile 9 to '/data/oradata/STGD/undotbs02.dbf';set newname for datafile 10 to '/data/oradata/STGD/yd_data02.dbf';set newname for datafile 11 to '/data/oradata/STGD/drsys01.dbf';set newname for datafile 12 to '/data/oradata/STGD/xdb01.dbf';set newname for datafile 13 to '/data/oradata/STGD/yd_data07.dbf';set newname for datafile 14 to '/data/oradata/STGD/yd_hstr09.dbf';set newname for datafile 15 to '/data/oradata/STGD/yd_hstr10.dbf';set newname for datafile 16 to '/data/oradata/STGD/yd_data08.dbf';set newname for datafile 17 to '/data/oradata/STGD/yd_hstr02.dbf';set newname for datafile 18 to '/data/oradata/STGD/yd_data03.dbf';set newname for datafile 19 to '/data/oradata/STGD/undotbs03.dbf';set newname for datafile 20 to '/data/oradata/STGD/yd_data04.dbf';set newname for datafile 21 to '/data/oradata/STGD/yd_hstr03.dbf';set newname for datafile 22 to '/data/oradata/STGD/yd_data05.dbf';set newname for datafile 23 to '/data/oradata/STGD/yd_hstr04.dbf';set newname for datafile 24 to '/data/oradata/STGD/yd_data06.dbf';set newname for datafile 25 to '/data/oradata/STGD/apm.dbf';set newname for datafile 26 to '/data/oradata/STGD/indx02.dbf';set newname for datafile 27 to '/data/oradata/STGD/yd_hstr05.dbf';set newname for datafile 28 to '/data/oradata/STGD/yd_hstr06.dbf';set newname for datafile 29 to '/data/oradata/STGD/yd_hstr07.dbf';set newname for datafile 30 to '/data/oradata/STGD/yd_hstr08.dbf';set until time "to_date('02/13/06 06:00:00','MM/DD/YY HH24:MI:SS')";restore database;switch datafile all;recover database;sql 'alter database open resetlogs';}1.7.1重新创建temporary tablespace由于rman备份的时候并不备temporary tablespaces,所以恢复完毕后,要重新创建它们。