NBU5240是一个基于系统文件和多种数据库备份的灾备系统,灵活性比较高。下面具体记录如何利用该系统的备份文件进行数据库还原。(基于业务场景)

公司某业务部门突然发现前台系统数据有异常,已经是几天前的跑出来的数据了,要求IT部门后台核实。FP系统前台数据利用测试机返回到13号中午跑完的时间。

数据库也要相应的返回到13号下午的数据。系统对于FP数据库是周六全备,周日不做备份策略,其他时间均为差异备份。客户端做的一系列还原操作都要安装NBU客户端工具读取主服务器上的备份文件,因为惯例用主机名称,所以要做好的HOSTS文件的识别(IP-HOSTNAME)。

C:\Users\Administrator>bplist -C zhnsdfp -s 2017-6-13 -e 2017-6-15 -k oracle_zhn
sdfp_0_97_seinescm_arch -t 4 -R -b -l  / |findstr "cnt"
-rw------- SYSTEM    SYSTEM       16252928 Jun 15 02:21 cntrl_1214_1_946693032:\

-rw------- SYSTEM    SYSTEM       16252928 Jun 14 02:49 cntrl_1202_1_946608342:\

-rw------- SYSTEM    SYSTEM       16252928 Jun 13 02:40 cntrl_1182_1_946521390:\

因为要求的是返回中午14-15点的数据库,所以控制文件的备份时间要晚于这个点,即取14号凌晨2点备份的控制文件

基于Windows平台,要先创建一个实例,实例名可以根据你自己命名,Liunx平台可以直接创建一个pfile文件启动到nomount状态

Windows平台下创建好实例后,调整归档模式及目录,关闭数据库后可以将除了参数文件的其他数据库文件通通删掉。

接着将数据库启动到NOMOUNT状态,利用RMAN脚本还原控制文件

还原好控制文件后,将数据库启动到mount状态,进行数据库还原到13号restore要加具体的时间点,下面漏了具体的时分秒,基于具体时间点的恢复,还原数据文件也要指定上(YYYY/MM/DD HH24:MI:SS)

还原好数据库之后,根据时间带出归档日志序列还原归档文件

alter session set nls_date_format='YYYYMMDD HH24:MI:SS';
set linesize 160;
set pagesize;

select THREAD#,SEQUENCE#,FIRST_TIME,COMPLETION_TIME from v$archived_log
where  COMPLETION_TIME>to_date('20170613 14:00:00','yyyymmdd hh24:mi:ss')
and    COMPLETION_TIME<to_date('20170613 15:00:00','yyyymmdd hh24:mi:ss') order by SEQUENCE#;

恢复归档文件

还原完归档日志文件后利用控制文件进行数据库恢复,将数据库恢复到13号下午14:20分

这里报找不到归档日志序列109672的错误信息,在困惑了好久之后突然想起该数据库的备份策略,周六全备,其他皆差异备份,所以需要还原全备以来的归档日志文件,

从日志序列109672到110181;

还原完后,再次进行数据库恢复

恢复过程将回检索全备以来的归档日志到指定恢复时间的日志序列号,完成介质恢复后,用resetlogs模式打开数据库。

SYS@seinescm>alter database open resetlogs;

数据库已更改。

SYS@seinescm>select status from v$instance;

STATUS
------------------------
OPEN

SYS@seinescm>archive log list
数据库日志模式            存档模式
自动存档             启用
存档终点            M:\test
最早的联机日志序列     1
下一个存档日志序列   2
当前日志序列           2
SYS@seinescm>

NBU5240备份系统还原数据库---Windows版的更多相关文章

  1. NBU5240备份系统还原数据库--Linux版

    利用NBU灾备系统数据库RMAN备份文件还原EHR数据库,将数据库还原到2017-7-10 10:00:00 linux centsos 6.6 原数据库版本 11.2.0.1  IP/hostnam ...

  2. 在ASP.NET中备份和还原数据库

        昨天看了<C#项目实录>中的进销存管理系统,和其他书里讲的案例一样,无非也就是数据库增删查改,但是这个进销存系统中有一个备份和还原数据库的功能,蛮有兴趣的,看了一下代码,原来如此, ...

  3. ASP.NET中使用代码来进行备份和还原数据库

    ASP.NET中使用代码来进行备份和还原数据库  SQL代码: 1 2 3 4 5 -- 备份数据库 backup database db_CSManage to disk='c:\backup.ba ...

  4. MSSQL - 备份和还原数据库

    SQL语句备份和还原数据库:http://blog.csdn.net/liuhelong/article/details/3335687 1.MSSQL - SqlServer:此数据库处于单用户模式 ...

  5. 使用.net备份和还原数据库

    原文:使用.net备份和还原数据库 CSDN网友的提问http://community.csdn.net/Expert/TopicView3.asp?id=4929678C#实现SQLSERVER20 ...

  6. mysql备份、还原数据库(命令行)

    这里记录下MySQL如何通过命令行备份和还原数据库. 简单的三个步骤 方法很简单,可以分为三个步骤: 1.打开cmd控制台(命令行). 2.输入相应命令完成备份还原操作. 3.关闭cmd控制台. 就和 ...

  7. SQL语句备份和还原数据库

    1,使用SQL最简单备份,还原数据库 1 /* 备份 */ 2 backup database Test to disk='D:/Test.bak' 3 /* 还原 */ 4 restore data ...

  8. Mysql命令行备份与还原数据库操作实例

    无论是Windows还是Linux,都可以通过如下命令行形式备份Mysql数据库 备份命令: 在windows的DOS窗口命令行或linux的shell命令行,假设需要备份的数据库是advanced: ...

  9. Sql server 数据库的备份和还原数据库提示“ 加载的介质已格式化为支持 1 个介质簇,但根据指定的备份设备,应支持 2 个介质簇”

     数据库备份和还原总结 在 "M:\2017-Pro\company\other\databak_2014-10\anquanbaowei_db_201704300200.BAK" ...

随机推荐

  1. 闭包、装饰器decorator、迭代器与生成器、面向过程编程、三元表达式、列表解析与生成器表达式

    一.装饰器 一.装饰器的知识储备 不想修改函数的调用方式,但是还想在原来的函数前后添加功能 1.可变长参数  :*args和**kwargs def index(name,age): print(na ...

  2. SQL 基础语句整理

    SQL教程 SELECT 语句 SELECT * FROM 表名称 DISTINCT 语句 SELECT DISTINCT 列名称 FROM 表名称 SELECT LastName,FirstName ...

  3. springmvc中的数据传递

    import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; impo ...

  4. Linux上安装ElasticSearch及遇到的问题

    在Linux上安装ElasticSearch 1. 安装前环境准备 安装JDK环境,并配置环境变量,这里可以参考我以前写过的博客 https://www.cnblogs.com/ywb-article ...

  5. 【leetcode 476】. Number Complement

    给定一个正整数,输出其补码. 思路:利用mask掩码进行异或, 利用 temp >> 1 大于0 来决定mask长度,求出的mask 为二进制 1 0 0 0 0类型,           ...

  6. 学习-Pytest(三)setup/teardown

    1. 用例运行级别 模块级(setup_module/teardown_module)开始于模块始末,全局的 函数级(setup_function/teardown_function)只对函数用例生效 ...

  7. 设备树里面#address-cells 、#size-cells、reg三者的关系

    栗子1: cpus { #address-cells = <>; #size-cells = <>; cpu@ { compatible = "arm,cortex- ...

  8. PAT Basic 1042 字符统计 (20 分)

    请编写程序,找出一段给定文字中出现最频繁的那个英文字母. 输入格式: 输入在一行中给出一个长度不超过 1000 的字符串.字符串由 ASCII 码表中任意可见字符及空格组成,至少包含 1 个英文字母, ...

  9. selenium-java爬虫实现

    推荐的网站学习网站 1.官方文档 http://www.seleniumhq.org/docs/ 2.selenium多线程 http://www.cnblogs.com/dingmy/p/34380 ...

  10. 对请求的request添加一些参数

    - (NSURLRequest *)addHeaderRequestWithUrl:(NSString *)urlStr{    NSMutableURLRequest *mutableRequest ...