TSM备份oracle数据库恢复过程
TSM+ORACLE备份恢复测试报告

Oracle数据库备份恢复测试报告目录1.背景概述 (1)1.1恢复测试目的 (1)1.2恢复测试方法 (1)1.3数据库备份架构 (1)2.恢复所需资源 (2)2.1主机资源 (2)2.2实施环境 (2)3.数据库恢复测试步骤 (3)3.1安装配置测试主机 (3)3.2全库恢复 (3)3.3测试主机-TSM恢复配置 (3)3.4测试主机-设定数据库环境变量 (4)3.5测试主机-启动数据库到NOMOUNT状态 (4)3.6测试主机-恢复控制文件 (4)3.7测试主机-更改数据库到MOUNT状态 (5)3.8测试主机-恢复数据文件 (5)3.9测试主机-恢复归档日志 (9)3.10测试主机-以RESETLOGS方法打开数据库 (11)3.11测试主机-重启数据库 (11)4.恢复结果 (12)1.背景概述1.1恢复测试目的为了验证数据库的备份有效性,我们进行了此次的数据库恢复测试,用来确保数据库备份的正确性,可恢复性。
1.2恢复测试方法异机恢复因为生产数据库已经在使用,我们不能在生产数据库上进行本机恢复测试,为了不影响生产数据库的正常使用,我们将在测试机上进行恢复测试。
1.3数据库备份架构1.备份系统采用IBM Tivoli备份软件;2.带库使用ADIC磁带库。
2.恢复所需资源2.1主机资源需要准备恢复的测试主机,最佳做法是恢复测试主机的硬件架构、操作系统版本和生产主机一致。
2.2实施环境3.数据库恢复测试步骤3.1安装配置测试主机因为测试机完全拷贝备份主机,故测试机与生产机环境一致,确保测试主机已经正常运行,并能于要恢复的生产主机,备份主机网络连通。
3.2全库恢复利用TSM软件界面,调用原来所备份的数据库,以及相应的数据库恢复工具RMAN的脚本,进行ORACLE 数据库系统的全库恢复。
3.3测试主机-TSM恢复配置因为测试主机与生产主机架构相同,故只需在TSM SERVER上定义SAN server。
【TSM】RAC通过TSM备份恢复至异机说明

RAC通过TSM备份恢复至异机说明(包你恢复)一、概述目前市场上有许多第三方备份软件,像IBM TSM、HP DP、NBU等,来保证数据的安全,那么怎么确定数据的有效性呢?只看备份日志无法准确判断所备份数据是否完全可用,下面我们就通过TSM所备份数据将RAC系统中数据恢复至单机(模拟,RAC系统完全宕机)二、操作过程TSM client安装过程这里暂不讨论,通过以下命令我们(oracle)确认客户端与服务器端连接是否正常:授权给客户端访问目标端备份数据权限(这里RAC系统为目标端、恢复系统为客户端),并修改TSM client配置文件,使客户端可访问目标端备份数据。
授权修改参数文件(dsm.sys),添加以下内容注意,如果此处不授权,或者文件没有配置,恢复时报一下错误(没有自动备份或者没有有效的备份集):查看pubdb最新备份tsm: TSMSRV>select ll_name,backup_date,state from backups where node_name='PUBDB3' order by backup_date desc;LL_NAME: pubdb3_cntl_324_1_839950588BACKUP_DATE: 2014-02-19 15:34:26.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_spfile_323_1_839950581BACKUP_DATE: 2014-02-19 15:34:18.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_arch_322_1_839950571BACKUP_DATE: 2014-02-19 15:34:08.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_arch_321_1_839950525BACKUP_DATE: 2014-02-19 15:33:22.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_arch_320_1_839950524BACKUP_DATE: 2014-02-19 15:33:21.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_full_319_1_839950478BACKUP_DATE: 2014-02-19 15:32:34.000000STATE: ACTIVE_VERSIONLL_NAME: pubdb3_full_318_1_839950469下面我们就可以根据备份恢复spfile参数文件了,恢复之前,我们需强制启动数据库到nomount阶段,命令:startup nomonut forceRMAN> run {2> allocate channel ch00 type 'sbt_tape' parms 'ENV=(TDPO_OPTFILE=/opt/tivoli/tsm/client/oracle/bin64/tdpo.opt)';3> restore spfile from 'pubdb3_spfile_323_1_839950581';4> release channel ch00;5> }using target database control file instead of recovery catalogallocated channel: ch00channel ch00: SID=429 device type=SBT_TAPEchannel ch00: Data Protection for Oracle: version 5.5.2.0Starting restore at 19-FEB-14channel ch00: restoring spfile from AUTOBACKUP pubdb3_spfile_323_1_839950581 channel ch00: SPFILE restore from AUTOBACKUP completeFinished restore at 19-FEB-14released channel: ch00在做恢复时也遇到了不少问题,浏览论坛时看到网友问,为啥使用tag就保错呢?通过下面的错误信息呢,我们其实可以得知在执行恢复命令时tag 并没有起到作用,通过查看相关资料,发现tag作为一个备份集的标示存于catalog中,而本此备份将备份信息都存放于控制文件中,目前控制文件没有恢复,无法读取该标示。
ORACLE数据库如何恢复

ORACLE数据库如何恢复(邝俊标)ORACLE数据库备份与恢复与ORACLE的结构密切相关,大家先弄清ORACLE 物理结构有哪些?逻辑结构是有哪些?它们的作用是什么?弄明白这些以后,具体怎么备份、怎么恢复就需要了解下ORACLE本身是怎么管理数据库的有那些相关的ORACLE系统表?ORACLE的后台进程是怎么管理的?最后就要知道相关的ORACLE命令、语法,根据系统提示错误灵活处理了。
ORACLE 恢复主要有下面的几种问题:一、数据文件丢失恢复:二、OS备份下的基于时间的恢复三、损坏联机日志的恢复四、损坏当前联机日志恢复五损坏控制文件的恢复六、损坏回滚数据文件的恢复七、损坏临时数据文件的恢复一、数据文件丢失恢复:1、查看报警文件或动态视图v$recover_fileSQL>select * from v$recover_file;2、脱机数据文件SQL> alter database datafile 'file#' offline drop;3、打开数据库,拷贝备份回来(restore),恢复(recover)该数据文件,并联机SQL> alter database open;4、拷贝备份从备份处copy d:\databak\ users01.dbf d:\oracle\oradata\orcl;5、恢复该数据文件SQL> recover datafile 'file#';SQL> recover database; (多个数据文件丢失,恢复整个数据库)6、恢复成功,联机该数据文件SQL> alter database datafile 'file#' online;说明:1) 采用热备份,需要运行在归档模式下,可以实现数据库的完全恢复,也就是说,从备份后到数据库崩溃时的数据都不会丢失。
2) 可以采用全备份数据库的方式备份,对于特殊情况,也可以只备份特定的数据文件,如只备份用户表空间(一般情况下对于某些写特别频繁的数据文件,可以单独加大备份频率)3) 如果在恢复过程中,发现损坏的是多个数据文件,即可以采用一个一个数据文件的恢复方法(第5步中需要对数据文件一一脱机,第6步中需要对数据文件分别恢复),也可以采用整个数据库的恢复方法。
TSM客户端数据恢复指导手册

XX数据备份项目TSM客户端数据恢复指导手册2011年08月广州必诺数码科技有限公司目录1、概述 (2)2、Oracle数据库本机恢复 (2)2.1、查找出原数据库的DBID号码 (2)2.2、配置正确的监听和名字解释文件 (3)2.3、恢复数据库参数文件 (5)2.4、恢复控制文件 (7)2.5、查找数据库最大的SCN号码 (7)2.6、数据库完全恢复 (11)2.7、数据库不完全恢复 (11)3、Oracle数据库异机恢复 (13)3.1、Oracle数据库安装的注意 (13)3.2、TSM软件的安装和配置 (13)3.2.1、TSM客户端的安装和配置如下: (14)3.2.2、TDP for Oracle插件的安装和配置如下: (16)3.3、查找出原数据库的DBID号码 (19)3.4、恢复和编辑数据库参数文件 (20)3.5、恢复控制文件 (23)3.6、查找数据库的SCN号码 (24)3.7、数据库的不完全恢复 (28)3.7.1、根据指定的SCN号进行恢复 (30)3.7.2、根据指定的时间点进行恢复 (32)4、SQL Server恢复 (35)5、文件恢复 (37)5.1、Windows系统文件恢复 (37)5.2、AIX系统文件恢复 (41)1、概述本恢复与测试方案主要目的是描述通过IBM TSM备份的数据如何进行恢复。
以达到恢复预演的效果。
文档中出现的文件名、目录路径、SID、DBID等等可能与实际不一定相符,可以使用正确的进行替换即可。
2、Oracle数据库本机恢复2.1、查找出原数据库的DBID号码目前XX的Oracle数据库备份采用了catalog恢复目录的方式进行。
这样可以有效保证在数据库运行的本机出现最严重的故障时,均能保证数据库可以恢复。
在通过catalog备份的时候,数据库会把自己的DBID注册到catalog数据库中。
catalog 数据库通过DBID识别和存放各个不同的数据库的备份信息。
ORACLE数据库备份及恢复方法

ORACLE数据库备份及恢复⽅法⼀、oracle数据备份1、找到电脑右下⽅开始--运⾏,输⼊cmd,进⼊dos命令窗⼝。
2、输⼊sqlplus system/密码@orcl (⼀般管理员登录)--------连接本机oracle数据库输⼊ sqlplus system/密码@IP:端⼝/orcl (⼀般管理员登录)--------连接⾮本机oracle数据库3、创建⼀个dmp的⽬录,输⼊create directory dpdata1 as 'E:\temp\dmp';4、查询是否有此⽬录,select * from dba_directories;5、在E盘下新建E:\temp\dmp⽬录6、赋于要导出数据表的所属⽤户权限,grant read,write on directory dpdata1 to ⽤户名;,授权成功以后输⼊exit 退出sql。
7、开始数据备份,expdp system/密码@orcl directory=dpdata1 dumpfile=⽂件名.dmp logfile=⽂件名.log schemas=⽤户名8、⽬录E:\temp\dmp下⾯可以看到备份⽂件,备份完成。
⼆、oracle数据还原1、找到电脑右下⽅开始--运⾏,输⼊cmd,进⼊dos命令窗⼝。
2、输⼊sqlplus system/密码@orcl (⼀般管理员登录)--------连接本机oracle数据库3、删除user,输⼊ drop user ⽤户名 cascade;4、导⼊还原数据,输⼊ impdp system/密码@orcl directory=dpdata1 dumpfile=dmp⽂件名 logfile=log⽂件名 schemas=⽤户名; 还原完成。
5、在plsql或者其他oracle检查数据完整性,脚本如下:select t.table_name , t.num_rows from user_tables t order by t.num_rows desc三、定时备份:@ECHO OFFschtasks /create /tn IRRIG_SOUTH_DEV数据库定时备份 /tr "E:\temp\IRRIG_SOUTH_DEV.bat" /sc daily /st 00:00:00 /ru "system" PAUSEEXITwindows每晚⾃动运⾏数据库备份bat。
TSM + 带库进行文件数据的备份和恢复

利用TSM + 带库进行文件数据的备份和恢复,是目前大多数TSM用户的基本需求。
但是这个似乎简单的需求却要求参与实施的工程师同时具备包括TSM软件和带库硬件两方面的知识。
为了降低软件工程师的学习难度,帮助用户快速建立一个可用而且可靠的TSM 备份环境,本文对这一过程中需要的硬件知识进行了简要的描述。
本文主要以目前TSM用户最常用的环境:TSM + IBM LTO带库为例进行介绍。
对非IBM公司的带库,本文也针对其与IBM公司带库在TSM环境配置中的区别进行了介绍。
由于每一种操作系统平台上针对带库硬件的操作都有所不同,不可能在一篇文章中进行全面介绍,所以本文仅针对Linxu操作系统平台进行了讲解。
搭建TSM + 带库的备份环境,其过程一般可以分为如下几个步骤:1.搭建前的准备工作,包括软件平台需求的检查;硬件平台需求的检查;软件程序的准备;硬件驱动程序的准备(包括卡,机械手,驱动器三类驱动程序);2.带库驱动程序的安装以及测试;3.TSM的安装;4.TSM的硬件配置工作;5.TSM的备份策略设置;上述流程中上,前四个步骤都有跟硬件相关的操作,本文将对其中需要注意的环节以及相应的操作系统命令进行描述。
1.确定操作系统平台需求用户在安装TSM之前,必须针对自己所购买的TSM版本,查找出该版本TSM的平台需求。
针对操作系统而言,TSM对操作系统的要求可以从如下的链接中获得:/software/tivoli/products/storage-mgr/platforms.html针对Linux,用户一定要明确自己所使用的Linux平台的硬件架构是什么?对x86平台(通常指32bit),x86-64平台(AMD的64bit芯片平台),IA-64(Intel的64bit芯片平台)平台,IBM zSeries平台和IBM的Power平台,TSM提出了不同的要求。
如果用户手上没有自己机器的硬件手册,可以使用Linux的命令来获得一些信息:例如[root@localhost scsi]# uname -aLinux localhost.localdomain 2.6.9-11.ELsmp #1 SMP Fri May 20 18:26:27 EDT 2005 i686 i686i386 GNU/Linux[root@localhost scsi]#一个很典型的错误就是,在TSM 服务器5.30版本,并没有提供对x86_64平台的支持,但却提供了对x86平台的支持。
TSM备份恢复手册

TSM备份恢复手册为保障数据恢复准确有效性,避免数据恢复错误造成不必要的数据丢失等问题,特制定备份数据恢复手册。
该手册旨在规范标准恢复步骤。
在每季度或者由应用部门指定的恢复计划中严格按此手册操作。
按数据类型分为七种SQL、DB2、Oracle、Linux系统文件、Windows系统文件、AD、虚拟机一、SQL恢复步骤涉及SQL备份系统及数据检验负责人:恢复操作截图1、本机还原在SQL Server所在节点:开始→所有程序→Tivoli Storage Manager→Data Protection for SQL Server→FlashCopyManager,展开菜单到下图所示:进入”Recover”标签,选中”All Backups”,TSM自动列出所有完成的备份记录在上图中,选择右边”Restore”或者”Restore to Alternate Location”以恢复数据。
测试时选择”Restore to Alternate Location”以恢复到不同路径:选择完毕后,点选Restore即可开始恢复。
2、异机恢复1、用有SQL权限的用户登录否者无法操作数据库2、在测试服务器安装同样的TSM for client 和DP for SQL management修改2个dsm.opt查看正式库信息修改测试库dsm.opt文件路径:C:\Program Files\Tivoli\TSM\TDPSql查看正式库修改测试库:路径:C:\Program Files\Tivoli\TSM\baclient\dsm.opt在测试机打开DP for SQL management界面打开For SQL 界面警告忽视应该刚修改的的2个信息。
密码111111指定恢复路径注意恢复空间开始恢复二、DB2恢复步骤涉及DB2备份系统及数据检验负责人:DB2DB2建的与原DB2数据库一致,包括实例名、路径等。
以避免由于环境不一致导致需要在测试DB2中进行大量的环境修改。
Oracle数据库备份还原操作流程

1数据库备份和恢复1.1数据库备份数据库备份有两种方法:一、使用数据库备份向导;二、输入数据库备份命令。
方法一:向导备份1. 点击“开始-运行”,输入cmd,在命令行中输入“exp”,回车,如图:图 1-1向导备份2. 输入要导出数据库方案的用户名和密码:图 1-2输入用户名和密码3. 依次输入缓冲区大小、导出文件存放路径、选择导出方式(导出完整数据库、按用户导出、按表导出)、是否导出权限、是否导出表数据、是否压缩,一般情况下“是否导出权限”改成“no”,其余使用默认即可。
4. 最后输入导出数据库方案所属用户名,回车,如图:图 1-3输入导出数据库方案用户名5. 再次回车,完成导出。
方法二:命令备份根据数据库的具体情况,可以将方法一的第2、3步中需要的信息在第1步“exp”命令后进行描述。
例如:在本机上导出10.1.1.240服务器上用户ptac的数据库,点击“开始-运行”,输入cmd,命令行中输入:exp ptac/ptac@jqdemo_l0.1.1.240 file=d:\ptac.dmp full=n grants=n回车,完成备份。
●exp:oracle数据库导出指令;●ptac/ptac:用户名/密码;●jqdemo_l0.1.1.240:数据库服务名●file=d:\ptac.dmp:导出文件保存路径及名称;●full=n:是否导出整个文件,n表示选择no;●grants=n:是否导出权限,n表示选择no。
●statistics=NONE:是否忽略字符集输入exp help=y,可获得过更多关于数据库备份命令的信息。
1.2数据库恢复如果是初次恢复数据库方案,需要先添加相应的表空间和用户,详见“4.数据库的配置”。
如果是要覆盖已有数据库方案,恢复之前要删除原方案,详见“7.1删除方案”。
数据库恢复有两种方法:一、使用数据库恢复向导;二、输入数据库恢复命令。
方法一:向导恢复1. 点击“开始-运行”,输入cmd,在命令行中输入“imp”,回车,如图:图 1-4向导恢复2. 输入用户名和密码(如为初次导入应输入新建的用户名,如需覆盖原方案则输入原方案所属用户名),然后依次输入导入文件的路径及文件名、缓冲区大小(可默认),如果输入的用户名与文件备份时使用的用户名不一致会出现提示,如:图 1-5出错提示3. 依次选择是否只列出导入文件的内容、是否忽略创建错误、是否导入权限、是否导入表数据、是否导入整个导出文件,其中“导入权限”通常写“no”,导入整个导出文件选择“yes”,其余默认即可,最后回车,完成导入。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.1、Oracle数据库恢复
在做了Oracle群集的服务器上,需先把不执行恢复操作的那台Oracle停掉
Su – oracle
Sqlplus /nolog
Conn / as sysdba
Shutdown immediate
当前要恢复的Oracle以mount状态启动
Su – oracle
Sqlplus /nolog
Conn / as sysdba
Shutdown immediate
Startup nomount
quit
Rman target /进入rman状态,按需求做以下操作:
Set dbid=193959
(dbid是源数据库dbid 通过
SQL> select dbid from v$database;
DBID
----------
190877615)
恢复控制文件
run {
allocate channel t1 type 'sbt_tape' parms 'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt)';
restore controlfile from autobackup;
alter database mount;
}
恢复数据库并回滚日志
注:回滚日志时间点的选择很重要,该时间点一定要选在控制文件备份时间点至删除数据表空间之间
RMAN> run{
2> allocate channel t1 type 'sbt_tape' parms 'ENV=(TDPO_OPTFILE=/usr/tivoli/tsm/client/oracle/bin64/tdpo.opt)';
3> restore database;
4> sql "alter session set nls_date_format=''yyyy-mm-dd hh24:mi:ss''";
5> recover database until time '2012-7-10 14:40:00';
6> alter database open resetlogs;
7> }
released channel: ORA_DISK_1
allocated channel: t1
channel t1: SID=783 instance=gdyj1 device type=SBT_TAPE
channel t1: Data Protection for Oracle: version 5.5.1.0
Starting restore at 10-JUL-12
channel t1: starting datafile backup set restore
channel t1: specifying datafile(s) to restore from backup set
channel t1: restoring datafile 00005 to +DA TADG/gdyj/datafile/users.265.779397111
channel t1: reading from backup piece XSDB_GDYJ_788279319_0mnfoc0n_1_1
channel t1: piece handle=XSDB_GDYJ_788279319_0mnfoc0n_1_1 tag=TAG20120710T142403 channel t1: restored backup piece 1
channel t1: restore complete, elapsed time: 00:00:55
channel t1: starting datafile backup set restore
channel t1: specifying datafile(s) to restore from backup set
channel t1: restoring datafile 00001 to +DA TADG/gdyj/datafile/system.260.779397081 channel t1: restoring datafile 00002 to +DA TADG/gdyj/datafile/sysaux.261.779397085 channel t1: restoring datafile 00003 to +DA TADG/gdyj/datafile/undotbs1.262.779397087 channel t1: restoring datafile 00004 to +DA TADG/gdyj/datafile/undotbs2.264.779397105 channel t1: restoring datafile 00006 to +DA TADG/gdyj/datafile/ivr_petra_1_10.dbf
channel t1: reading from backup piece XSDB_GDYJ_788279544_0nnfoc7o_1_1
channel t1: piece handle=XSDB_GDYJ_788279544_0nnfoc7o_1_1 tag=TAG20120710T142403 channel t1: restored backup piece 1
channel t1: restore complete, elapsed time: 00:05:05
Finished restore at 10-JUL-12
sql statement: alter session set nls_date_format=''yyyy-mm-dd hh24:mi:ss''
Starting recover at 10-JUL-12
starting media recovery
media recovery complete, elapsed time: 00:00:06
Finished recover at 10-JUL-12
database opened
released channel: t1
RMAN>
完成后进sqlplus
Sql> recover database using backup controlfile until cancel; Sql> alter database open resetlogs;
数据库open 则恢复成功。