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以递归的⽅式显⽰⼦⽬录。
NBUOracle时间点恢复测试步骤

NBUOracle时间点恢复测试步骤NBU ORACLE恢复测试步骤1、测试环境(1)服务器IBM AIX6.1(2)应用为用友财务系统、久其财务报表系统(3)环境情况:用友系统:CWNCLP1 IP:172.16.173.50CWNCLP2 IP:172.16.173.51数据库系统:Oracle rac软件:nbu 客户端和oracle代理久其系统:BBYWLP1 IP:172.16.173.10BBYWLP2 IP: 172.16.173.11数据库系统:Oracle rac软件:nbu 客户端和oracle代理备份服务器:Backupserver软件:nbu服务器端2、测试需求:用NBU软件备份和Oracle的archivelog方式来恢复数据到一个时间点的数据。
3、测试步骤:测试用友数据(1)在NUB备份服务器上用备份用友数据的策略来对用友数据做全备份。
(2)在备份任务完成后,用友工程师对数据进行更改(如向系统添加数据等)并记录下更改数据的时间。
(如2010-4-24 03:10:15)(3)更改数据完成后,停一段时间后再次对数据进行数据添加并记录下时间(如2010-4-24 03:15:40)(4)在数据更改完成后,停一段时间后。
开始数据恢复。
(5)数据恢复步骤:a)用SSH客户端工具分别登陆到CWNCLP1 CWNCLP2b)在CWNCLP1 CWNCLP2上用Oracle用户登陆,命令为su –oracle.c)登陆成功后,用conn / as sysdba;命令来连接数据库。
在CWNCLP1 CWNCLP2都要进行连接。
d)连接完成后,用shutdown immediate;命令分别在CWNCLP1 CWNCLP2上执行。
e)命令执行完成后,由于是Oracle rac ,所以需要查看一下备份时用的是那一台机器。
查看得到是在CWNCLP2做了数据库备份。
所以在CWNCLP2上执行startupmount;命令。
NBU入门_异机恢复oracle_nocatalog

NetBackup将Oracle数据库恢复到其它服务器(rman nocatalog)一、假设不使用rman catalog。
假设要将数据库恢复到new_host的不同文件系统/data上。
以oracle8i语法为例,Oracle9无svrmgrl,需用sqlplus “/ as sysdba”。
1. 在new_host上创建dba组和与old_host相同的Oracle用户。
将/data的可写权限给Oracle用户。
确定new_host上有足够的硬盘空间存放新的datafile及archive log file。
2. 修改.profile文件中相关的Oracle环境变量,ORACLE_SID保持与old_host中一致。
3. 安装与old_host相同版本的Oracle数据库软件,不创建数据库。
4. 将old_host中$ORACLE_HOME/dbs下的initSID.ora文件拷至new_host的$ORACLE_HOME/dbs下。
如果initSID.ora中有ifile=’xxx.ora’,则将xxx.ora也进行拷贝。
Oracle9也可能用spinitSID.ora。
5. 创建initSID.ora(及xxx.ora)中所用到的目录。
通常所需建立的目录为background_dump_dest、core_dump_dest、user_dump_dest、log_archive_dest。
常6. 在new_host上安装和配置NetBackup client和Oracle Agent。
注意在NetBackup Server的/usr/openv/netbackup/db/altnames目录下touch No.Restrictions (允许异机恢复)。
7. 从原机copy或从磁带异机恢复standard方式备份的最新的control file到new_host的/data目录下。
8. 修改initSID.ora(及xxx.ora),如果是OPS,将OPS相关的参数去掉:(1) control_files = (“/data/controlfile_name”)(2) log_archive_dest=”/data/arch”(3) sort_area_size=20000000# 如果sort_area_size不够大,恢复archive_log时可能出现ora-12209. svrmgrl> startup mount10. svrmgrl> select file# from v$datafile,记录file#11. svrmgrl> select * from v$logfile,记录log文件的目录。
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
oracle异机恢复

Media上有完好的数据库oracle 9i,oracle_home=E:\oracle\ora92oracle_sid=ldl要求:Master完全备份media中的oracle数据库(控制文件,归档日志,数据库文件),然后在把oracle数据库恢复到restore主机上。
第一步,在裸机上安装oracle 9i下一步下一步只安装软件,不安装实例。
下一步下一步安装结束,退出。
第二步,允许异机恢复在master上面创建C:\Program Files\Veritas\NetBackup\db\altnames\No.restrictions 第三步,在restore上E:\oracle\ora92\database下创建pfile文件initldl.ora。
############################################ Sort, Hash Joins, Bitmap Indexes###########################################pga_aggregate_target=25165824sort_area_size=524288############################################ Database Identification###########################################db_domain=""db_name=ldl############################################ File Configuration###########################################control_files=("E:\oracle\oradata\ldl\CONTROL01.CTL","E:\oracle\oradata\ldl\CONTROL02.CTL", "E:\oracle\oradata\ldl\CONTROL03.CTL")############################################ Pools###########################################java_pool_size=33554432large_pool_size=8388608shared_pool_size=50331648############################################ Cursors and Library Cache###########################################open_cursors=300############################################ System Managed Undo and Rollback Segments###########################################undo_management=AUTOundo_retention=10800undo_tablespace=UNDOTBS1########################################### # Diagnostics and Statistics########################################### background_dump_dest=E:\oracle\admin\ldl\bdump core_dump_dest=E:\oracle\admin\ldl\cdumptimed_statistics=TRUEuser_dump_dest=E:\oracle\admin\ldl\udump########################################### # Processes and Sessions########################################### processes=150########################################### # Redo Log and Recovery########################################### fast_start_mttr_target=300########################################### # Cache and I/O########################################### db_block_size=8192db_cache_size=25165824db_file_multiblock_read_count=16第四步,创建文件夹,E:\oracle\oradata\ldl\E:\oracle\admin\ldl\bdumpE:\oracle\admin\ldl\cdumpE:\oracle\admin\ldl\udumpE:\oracle\admin\ldl\createE:\oracle\admin\ldl\pfile第五步,创建sidC:\>oradim -NEW -sid ldl第六步,创建密码文件C:\>orapwd file=e:\oracle\ora92\database\pwdldl.ora password=oracle第七步,设置环境变量C:\>set oracle_sid=ldl第八步,启动数据库到nomount状态C:\>sqlplus "/as sysdba"SQL*Plus: Release 9.2.0.1.0 - Production on 星期四10月23 10:33:46 2008 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.已连接到空闲例程。
NBU NetBackup 恢复Oracle

本机恢复以恢复172.16.7.103(主机名ylbi)上的oracle为例,进行说明。
1.查看数据文件的存放位置。
SQL> select * from dba_data_files;2.备份所有数据文件。
$ pwd/sapboe/oradata$ ls -ltotal 8drwxr-x--- 2 orabop dba 4096 Dec 18 11:10 BOP $ tar -cvf BOP.tar BOP/a BOP/a BOP/bo_temp01.dbf 1024016 blocks.a BOP/boe_data01.dbf 1024016 blocks.a BOP/boe_data02.dbf 1024016 blocks.a BOP/boe_data03.dbf 1024016 blocks.a BOP/control01.ctl 15072 blocks.a BOP/cre_eas.dbf 102416 blocks.a BOP/ds_ce_data01.dbf 1024016 blocks.a BOP/ds_ce_data02.dbf 1024016 blocks.a BOP/ds_lo_data01.dbf 1024016 blocks.a BOP/ds_lo_data02.dbf 1024016 blocks.a BOP/ds_temp01.dbf 1024016 blocks.a BOP/loc_eas.dbf 274832 blocks.a BOP/redo01.log 102401 blocks.a BOP/redo02.log 102401 blocks.a BOP/redo03.log 102401 blocks.a BOP/sysaux01.dbf 1986576 blocks.a BOP/system01.dbf 1495056 blocks.a BOP/temp01.dbf 59408 blocks.a BOP/undotbs01.dbf 204816 blocks.a BOP/users01.dbf 10256 blocks.3.将备份出的BOP.tar包放到其他路径。
NBU重定向恢复Oracle数据库总结

一、对源数据库进行一次完整、成功的备份;二、在NBU Master Server上建立C:\Program Files\Veritas\NetBackup\altnames\No.Restrictions文件;三、对于源服务器Media Server恢复到Client的情况下需要在Master Server上进行如下配置:四、目标客户端的bp.conf文件里CLIENT_NAME = orcldb04,client name要制定源服务器名称;五、在目标客户端上要可以用bplist命令列出源客户端所有的备份镜像.六、恢复步骤1、恢复控制文件(数据库nomount状态下,set DBID=1271924299)run{allocate channel ch01 type sbt_tape;send 'nb_ora_serv=s4pb02,nb_ora_client=orcldb04';restore controlfile from '/cntrl_474_1_747243121';release channel ch01;}2、恢复数据文件(数据库mount状态下)run{allocate channel ch00 type sbt_tape;send 'nb_ora_serv=s4pb02,nb_ora_client=vip_db1';restore database;release channel ch00;}ORrun{allocate channel ch00 type sbt_tape;allocate channel ch01 type sbt_tape;send 'nb_ora_serv=s4pb02,nb_ora_client=orcldb04';set newname for datafile 00003 to '/data/orcl/sysaux01.dbf';set newname for datafile 00007 to '/data/orcl/DRGN_DATA10.dbf'; set newname for datafile 00011 to '/data/orcl/DRGN_DATA06.dbf'; set newname for datafile 00015 to '/data/orcl/DRGN_DATA02.dbf'; set newname for datafile 00018 to '/data/orcl/DRGN_INDEX03.dbf'; set newname for datafile 00004 to '/data/orcl/users01.dbf';set newname for datafile 00008 to '/data/orcl/DRGN_DATA09.dbf'; set newname for datafile 00012 to '/data/orcl/DRGN_DATA05.dbf'; set newname for datafile 00016 to '/data/orcl/DRGN_INDEX05.dbf'; set newname for datafile 00017 to '/data/orcl/DRGN_INDEX04.dbf'; set newname for datafile 00001 to '/data/orcl/system01.dbf';set newname for datafile 00006 to '/data/orcl/DRGN_INDEX01.dbf'; set newname for datafile 00010 to '/data/orcl/DRGN_DATA07.dbf'; set newname for datafile 00014 to '/data/orcl/DRGN_DATA03.dbf'; set newname for datafile 00019 to '/data/orcl/DRGN_INDEX02.dbf'; set newname for datafile 00002 to '/data/orcl/undotbs01.dbf'; set newname for datafile 00005 to '/data/orcl/DRGN_DATA01.dbf'; set newname for datafile 00009 to '/var/orcl/DRGN_DATA08.dbf'; set newname for datafile 00013 to '/var/orcl/DRGN_DATA04.dbf'; restore database;switch datafile all;(如果数据文件路径修改,必须运行此命令)release channel ch00;release channel ch01;}set newname for datafile 00005 to '/data/orcl/DRGN_DATA01.dbf';set newname for datafile 00009 to '/var/orcl/DRGN_DATA08.dbf';set newname for datafile 00013 to '/var/orcl/DRGN_DATA04.dbf';restore database;switch datafile all;(如果数据文件路径修改,必须运行此命令)recover database;(如果恢复的时候指定的控制文件为最后一次增量备份的时候备份的,那么需要进行recover database的操作,否则会提示数据库恢复不完全)release channel ch00;release channel ch01;}3、恢复归档日志文件(mount状态下)SQL> recover using backup controlfile until cancel;4、打开数据库SQL> alter database open resetlogs;七、验证恢复是否成功1、关闭数据库2、打开数据库3、列出数据文件SQL> recover using backup controlfile until cancel;ORA-00279: change 59832031 generated at 03/31/2011 15:31:09 needed for thread 1ORA-00289: suggestion :/data/app/product/10.2.0/db_1/dbs/arch1_897_744143566.dbfORA-00280: change 59832031 for thread 1 is in sequence #897Specify log: {<RET>=suggested | filename | AUTO | CANCEL}cancelMedia recovery cancelled.SQL> alter database open resetlogs;Database altered.SQL> shutdown immediate;Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started.Total System Global Area 1610612736 bytesFixed Size 2084296 bytesVariable Size 1023410744 bytesDatabase Buffers 570425344 bytesRedo Buffers 14692352 bytesDatabase mounted.Database opened.SQL> select name from V$datafile;NAME-------------------------------------------------------------------------------- /data/orcl/system01.dbf/data/orcl/undotbs01.dbf/data/orcl/sysaux01.dbf/data/orcl/users01.dbf/data/orcl/DRGN_DATA01.dbf/data/orcl/DRGN_INDEX01.dbf/data/orcl/DRGN_DATA10.dbf/data/orcl/DRGN_DATA09.dbf/var/orcl/DRGN_DATA08.dbf/data/orcl/DRGN_DATA07.dbf/data/orcl/DRGN_DATA06.dbfNAME-------------------------------------------------------------------------------- /data/orcl/DRGN_DATA05.dbf/var/orcl/DRGN_DATA04.dbf/data/orcl/DRGN_DATA03.dbf/data/orcl/DRGN_DATA02.dbf/data/orcl/DRGN_INDEX05.dbf/data/orcl/DRGN_INDEX03.dbf /data/orcl/DRGN_INDEX02.dbf19 rows selected.SQL>。
通过nbu恢复oracle数据库(恢复实例)

1、关闭开启的实例数据库(未关监听)shutdown immediate2、传NBU客户端3、安装NBU客户端/usr/openv/netbackup/bin ./oracle_link 建立连接新客户端必须启动这个命令,不然无法进行还原,需要在oracle用户下跑命令4、查询备份信息5、设置备份可强制恢复6、检查Oracle安装软件7、检查NBU客户端进程8、检查备份集cd /usr/openv/netbackup/bin./bplist -C cmccdb1_beifen -t 4-R -b -l /|more9、创建参数文件/u01/app/oracle/database/10R1/dbs oracle环境变量touch init bacdb.orachmod 777 initbacdb.orabacdb.__db_cache_size=1711276032bacdb.__java_pool_size=46976204bacdb.__large_pool_size=13421772bacdb.__oracle_base='/opt/oracle/app/oracle'#ORACLE_BASE set from environmentbacdb.__pga_aggregate_target=677799526bacdb.__sga_target=4019976806 ----服务器内存80%bacdb.__shared_io_pool_size=0bacdb.__shared_pool_size=228170137bacdb.__streams_pool_size=6710886*.audit_file_dest='/opt/oracle/app/oracle/admin/bacdb/adump'*.audit_trail='db'*.compatible='11.2.0.4.0'*.control_files='/opt/oracle/oradata/bacdb/controlfile/control01.ctl','/opt /oracle/oradata/bacdb/controlfile/control02.ctl'*.db_block_size=8192*.db_domain=''*.db_name='bacdb'*.diagnostic_dest='/opt/oracle/app/oracle'*.dispatchers='(PROTOCOL=TCP) (SERVICE=bacdbXDB)'bacdb.instance_number=1*.log_archive_dest_1='location=/opt/oracle/oradata/bacdb/arch'*.open_cursors=2000*.pga_aggregate_target=677799526*.processes=1000*.remote_login_passwordfile='exclusive'#*.sessions=4405*.sga_target=4019976806bacdb.thread=1bacdb.undo_tablespace='UNDOTBS1'10、创建文件目录mkdir -p /opt/oracle/app/oracle/admin/bacdb/adumpmkdir -p /opt/oracle/oradata/bacdb/controlfilemkdir -p /opt/oracle/oradata/bacdb/archmkdir -p /opt/oracle/oradata/bacdb/datafilemkdir -p /opt/oracle/oradata/bacdb/tempfilemkdir -p /opt/oracle/oradata/bacdb/onlinelog11、根据参数文件启动至nomountexport ORACLE_SID=bacdbsqlplus /as sysdbastartup nomount pfile='/opt/oracle/app/oracle/product/11.2.0/db_1/dbs/initbacdb.ora';12、根据参数文件创建spfile文件create spfile from pfile;13、重启至nomount状态startup force nomount;14、创建sys密码文件orapwd file=$ORACLE_HOME/dbs/orapwbacdb password=ERab3OC_4s entries=5 force=y15、恢复控制文件export ORACLE_SID=bacdbrman target /run{allocate channel ch0 type'sbt_tape';send 'NB_ORA_CLIENT= bac-db-01_beifen';send 'nb_ora_serv=NFJD-WHGLZY-NBU-1';restore controlfile from'/cntrl_7110_1_932480583'; release channel ch0;}16、启动至mount状态alter database mount;17、查询需要恢复的表空间select NAME,TS# from v$tablespace;因为我们这里只做部分表空间恢复,只需要恢复SYSTEM,SYSAUX,UNDOTBS1,TEMP,UNDOTBS2,USERS,DATA_SMSGW表空间,所以要分别找出这些表空间都包括那些数据文件:18、查询需要恢复的表空间对应的数据文件select file#,name from v$datafile where TS# in('0','1','2','3','4','5','6')19、恢复数据文件restore数据文件(执行脚本)$ nohup /opt/oracle/oradata/restore/restore.sh > restore.sh.out 2>&1 &rman target / nocatalog <<EOFrun {allocate channel ch00 type'SBT_TAPE';allocate channel ch01 type'SBT_TAPE';allocate channel ch02 type'SBT_TAPE';allocate channel ch03 type'SBT_TAPE';send 'NB_ORA_CLIENT=bac-db-01_beifen';send 'NB_ORA_SERV=NFJD-WHGLZY-NBU-1';set newname for datafile1to'/opt/oracle/oradata/bacdb/datafile/system.262.863641207';set newname for datafile2to'/opt/oracle/oradata/bacdb/datafile/sysaux.261.863641231';set newname for datafile3to'/opt/oracle/oradata/bacdb/datafile/undotbs1.260.863641255';set newname for datafile4to'/opt/oracle/oradata/bacdb/datafile/undotbs2.270.863641297';set newname for datafile5to'/opt/oracle/oradata/bacdb/datafile/users.269.863641331';set newname for datafile6to'/opt/oracle/oradata/bacdb/datafile/data_smsgw.276.863781045';set newname for datafile31to'/opt/oracle/oradata/bacdb/datafile/data_smsgw.301.884961611';set newname for datafile55to'/opt/oracle/oradata/bacdb/datafile/system.329.922185251';set newname for datafile60to'/opt/oracle/oradata/bacdb/datafile/undotbs1.334.925769101';set newname for datafile61to'/opt/oracle/oradata/bacdb/datafile/undotbs2.335.925769185';set newname for datafile62to'/opt/oracle/oradata/bacdb/datafile/system.336.926934061';restore database skip tablespaceTBS_ACS,TBS_UCMQ,TBS_BTS,WH_TS,TBS_MMCC,TBS_IAPMMWLAN,TBS_MMPG,TBS_SIMS20; switch datafile all;release channel ch00;release channel ch01;release channel ch02;release channel ch03;}EOF20、修改线日志文件路径select group#,member from v$logfile order by group#;alter database rename file'+DATA/bacdb/onlinelog/group_1.256.863641201'to'/opt/oracle/oradata/bacdb/onlinelog/group_1.256.863641201';alter database rename file'+DATA/bacdb/onlinelog/group_2.266.863641203'to'/opt/oracle/oradata/bacdb/onlinelog/group_2.266.863641203';alter database rename file'+DATA/bacdb/onlinelog/group_3.258.863643321'to'/opt/oracle/oradata/bacdb/onlinelog/group_3.258.863643321';alter database rename file'+DATA/bacdb/onlinelog/group_4.257.863643323'to'/opt/oracle/oradata/bacdb/onlinelog/group_4.257.863643323';alter database rename file'+DATA/bacdb/onlinelog/group_5.274.863641203'to'/opt/oracle/oradata/bacdb/onlinelog/group_5.274.863641203';alter database rename file'+DATA/bacdb/onlinelog/group_6.273.863641205'to'/opt/oracle/oradata/bacdb/onlinelog/group_6.273.863641205';alter database rename file'+DATA/bacdb/onlinelog/group_7.272.863641205'to'/opt/oracle/oradata/bacdb/onlinelog/group_7.272.863641205';alter database rename file'+DATA/bacdb/onlinelog/group_8.271.863641207'to'/opt/oracle/oradata/bacdb/onlinelog/group_8.271.863641207';alter database rename file'+DATA/bacdb/onlinelog/group_9.268.863643325'to'/opt/oracle/oradata/bacdb/onlinelog/group_9.268.863643325';alter database rename file'+DATA/bacdb/onlinelog/group_10.267.863643325'to'/opt/oracle/oradata/bacdb/onlinelog/group_10.267.863643325';alter database rename file'+DATA/bacdb/onlinelog/group_11.265.863643327'to'/opt/oracle/oradata/bacdb/onlinelog/group_11.265.863643327';alter database rename file'+DATA/bacdb/onlinelog/group_12.264.863643327'to '/opt/oracle/oradata/bacdb/onlinelog/group_12.264.863643327';21、recover数据库run {allocate channel ch00 type'SBT_TAPE';allocate channel ch01 type'SBT_TAPE';allocate channel ch02 type'SBT_TAPE';allocate channel ch03 type'SBT_TAPE';send 'NB_ORA_CLIENT=bac-db-01_beifen';send 'NB_ORA_SERV=NFJD-WHGLZY-NBU-1';recover database skip forever tablespaceTBS_ACS,TBS_UCMQ,TBS_BTS,WH_TS,TBS_MMCC,TBS_IAPMMWLAN,TBS_MMPG,TBS_SIMS20; release channel ch00;release channel ch01;release channel ch02;release channel ch03;}22、打开数据库alter database open resetlogs;select open_mode from v$database;23、创建临时表空间SQL> create temporary tablespace temp1 tempfile '/opt/products/oradata/temp1.dbf' size 500m;Tablespace created.SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY';TABLESPACE_NAME------------------------------TEMPUSSD2_TEMPTEMP1SQL> alter database default temporary tablespace temp1;Database altered.SQL> drop tablespace TEMP including contents and datafiles;Tablespace dropped.SQL> drop tablespace USSD2_TEMP including contents and datafiles;Tablespace dropped.注:Oracle的恢复需要注意。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
storage@NBU 异机恢复ORACLE基本步骤1、在主备份服务器上创建文件:#mkdir /usr/openv/netbackup/db/altnames#touch /usr/openv/netbackup/db/altnames/No.Restrictions注意文件名称中的大小写2、在需要恢复的主机上安装好ORACLE数据库以及NBU软件(包括Client 端软件以及Oracle agent软件),并且创建一个Oracle用户,注意该用户的名称和所属的组都要和原备份主机上的用户一致。
(本文档假设用户名为oracle)注意在此步骤中最好将原主机上创建过的一些文件目录或系统都创建好,需要mount好的文件系统也挂接好。
注意各文件系统以及创建目录的属性,将属主都更改为Oracle用户。
另外如果可能,最好将原主机上的oracle用户的.profile文件拷贝到当前oracle用户的主目录下。
3、通过NBU将原主机上备份的controlfile文件恢复到新主机上的指定位置(可以检查init<SID>.ora文件来确定文件位置)通过使用NBU的图形界面,可将controlifle恢复到新主机的指定位置上。
4、在新主机上启动数据库:#su - oracle$sqlplus "/as sysdba"sql>shutdown immediate;sql>startup mount;sql>exit;storage@5、使用nocatalog方式连接到目标数据库并执行恢复语句:#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>restore database;3>release channel ch00;4>}RMAN>exit对数据库进行recover恢复,并启动数据库。
注意在做此步骤前,要先检查原主机上是否有没有备份的archive log,如果有则拷贝到新的主机上。
#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>recover database;3>release channel ch00;4>}RMAN>alter database open resetlogs;RMAN>exit6、在数据库恢复完毕后,立刻对新的数据库进行一次全备份操作7、本文档的例子都是使用nocatalog方式。
如果用户是使用catalog方式,则需要注意两点:a、数据库连接方式不同。
使用catalog方式的时候,需要使用语句rman target / rcvcat [catalog库的监听器]来进行数据库的连接b、恢复controlfile的方式不同,通过如下脚本恢复:1、确保数据库已经停止,然后将数据库启动到nomount状态:#su - oracle$sqlplus "/as sysdba"sql>shutdown immediate;sql>startup nomount;sql>exit;storage@2、连接到catalog库,进行controlfile的恢复#su - oracle$rman target / rcvcat [catalog库的监听器]RMAN>run {1>allocate channel ch00 type 'sbt_tape';2>restore controlfile;3>release channel ch00;4>}RMAN>exit3、对数据库进行recover恢复,并启动数据库#su - oracle$rman target / rcvcat [catalog库的监听器]RMAN> alter database mount;RMAN>run {1>allocate channel ch00 type 'sbt_tape';2>recover database;3>release channel ch00;4>}RMAN>alter database open resetlogs;RMAN>exitstorage@附录:一些特殊情况下的恢复a、恢复后的数据库中库文件位置和原位置不同,或名称不同run {set newname for datafile 1 to '/data/data1.dbf';set newname for datafile 2 to '/data/data2.dbf';…restore database;switch datafile all;recover database;sql 'alter database open resetlogs';}通过使用set … for ..to语句将原库文件名称修改为新的库文件名称。
b、如果确认全部archive log都已用完,而recover仍提示需下一个archive log,或alter database openresetlogs时提示datafile1 need recover,可采用以下步骤#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2> recover database using backup controlfile until cancel;3>release channel ch00;4>}在脚本运行过程中根据提示,输入cancel <回车>脚本运行结束后使用命令alter database open resetlogs;启动数据库c、如果不是恢复到最新,而是恢复到某一时刻,rman脚本如下#su – oracle$rman target / nocatalogrun {allocate channel t1 type 'sbt_tape';set until time "to_date('06/30/02 13:00:00','MM/DD/YY HH24:MI:SS')"restore database;recover database;sql 'alter database open resetlogs';}d、恢复单个的数据文件:1、确保数据库已经停止,然后将数据库启动到mount状态:#su - oracle$sqlplus "/as sysdba"storage@sql>shutdown immediate;sql>startup mount;sql>exit;2、连接到catalog库,进行datafile的恢复#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>restore datafile ‘具体的datafile名称’;3>release channel ch00;4>}RMAN>exit3、对数据文件进行recover恢复,并启动数据库#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>recover datafile ‘具体的datafile名称’;3>release channel ch00;4>}RMAN>alter database open ;RMAN>exite、恢复单独的tablespace1、确保数据库已经停止,然后将数据库启动到mount状态:#su - oracle$sqlplus "/as sysdba"sql>shutdown immediate;sql>startup mount;sql>exit;2、连接到catalog库,进行tablespace的恢复#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>restore tablespace ‘具体的tablespace名称’;3>release channel ch00;4>}storage@RMAN>exit3、对数据表空间进行recover恢复,并启动数据库#su - oracle$rman target / nocatalogRMAN>run {1>allocate channel ch00 type 'sbt_tape';2>recover tablespace ‘具体的datafile名称’;3>release channel ch00;4>}RMAN>alter database open ;RMAN>exit。