代码改变世界

随笔分类 - A备份恢复专题

使用SQL计算宝宝每次吃奶的时间间隔(数据保障篇)

2019-12-26 22:47 by AlfredZhao, 235 阅读, 收藏, 编辑
摘要:目前程序从功能上其实已经完全满足客户(当然我这里的客户都是指媳妇儿^_^)需求,具体可参考: "使用SQL计算宝宝每次吃奶的时间间隔" "使用SQL计算宝宝每次吃奶的时间间隔(续)" 那么本篇 "使用SQL计算宝宝每次吃奶的时间间隔(数据保障篇)" 存在的意义在哪呢? 原因很简单,就是因为我们作为技 阅读全文

实验Oracle数据文件被误删除的场景恢复

2019-05-20 17:45 by AlfredZhao, 222 阅读, 收藏, 编辑
摘要:环境: RHEL 5.4 + Oracle 11.2.0.3 背景: 数据库没有备份,数据库文件被误操作rm,此时数据库尚未关闭,也就是对应句柄存在,如何快速恢复? "1.某个普通数据文件被删除" "2.所有数据文件被删除" 1.某个普通数据文件被删除 1.1 模拟5号数据文件被rm误删除 1.2 阅读全文

模拟一则ORA-600 [4194][][]故障并处理

2019-05-17 06:03 by AlfredZhao, 241 阅读, 收藏, 编辑
摘要:环境: OEL 5.7 + Oracle 11.2.0.3 "1.模拟ORA 600 [4194][][]故障" "2.使用bbed处理" "3.尝试启动数据库" 1.模拟ORA 600 [4194][][]故障 本次实验环境模拟的是相关的undo/rollback block在system rol 阅读全文

实验隐藏参数"_allow_resetlogs_corruption"的使用

2018-12-26 02:04 by AlfredZhao, 900 阅读, 收藏, 编辑
摘要:实验环境: OEL 5.7 + Oracle 10.2.0.5 Tips: 该参数仅在特殊恢复场景下使用,需要在专业Oracle工程师指导下进行操作。 "1.隐藏参数说明" "2.故障场景再现" "3.非常规恢复" 1.隐藏参数说明 查询隐藏参数"_allow_resetlogs_corruptio 阅读全文

Oracle 10g使用amdu抽取数据文件

2018-12-11 00:05 by AlfredZhao, 393 阅读, 收藏, 编辑
摘要:环境: OEL 5.7 + Oracle 10.2.0.5 RAC 需求: 实验在Oracle 10g环境使用amdu抽取数据库文件 本文主要目的是介绍3个知识点: "1.使amdu可以在oracle 10g环境中使用" "2.使kfed可以在oracle 10g环境中使用" "3.amdu如何抽取 阅读全文

Oracle推进SCN系列:使用oradebug在mount状态下推进SCN

2018-06-29 11:08 by AlfredZhao, 1391 阅读, 收藏, 编辑
摘要:环境: RHEL 6.5(x86 64) + Oracle 11.2.0.4 声明: 推进SCN属于非常规恢复范畴,不建议非专业人员操作,否则后果自负。 需求: 我这里演示下推进SCN 10W数量级,实际需求推进多少可以根据ORA 600 [2662] [a] [b] [c] [d] [e]具体值来 阅读全文

记录一则RMAN恢复到历史备份(多个incarnation)

2018-06-27 07:56 by AlfredZhao, 362 阅读, 收藏, 编辑
摘要:环境: OEL 5.7 + Oracle 11.2.0.4 1.直接restore到想要恢复的时间点报错: 2.查看incarnation,尝试RESET DATABASE TO INCARNATION也不行: 此时catalog start with 之前的全备也不认。 思考一下。。 3.恢复一个 阅读全文

RMAN备份策略与异机恢复一例(续篇)

2018-06-21 18:16 by AlfredZhao, 651 阅读, 收藏, 编辑
摘要:本文是《 "RMAN备份策略与异机恢复一例" 》的续篇,继续实验验证,最终实现两个需求: "1.异机恢复临时测试的小库" "2.传输归档时,实现增量传输" 1.异机恢复临时测试的小库 之前异机恢复的需求已经演练成功,现在需要保持之前恢复的库orcl不动,全新恢复一个用于临时测试指定时间点的小库,实例 阅读全文

RMAN备份策略与异机恢复一例

2018-06-19 19:27 by AlfredZhao, 1248 阅读, 收藏, 编辑
摘要:实验环境: A机器(生产用途):RHEL 6.5 + Oracle 11.2.0.4 + IP Address 192.168.1.11 B机器(备机用途):RHEL 6.5 + Oracle 11.2.0.4 + IP Address 192.168.1.61 需求: A机器RMAN备份完成后自动 阅读全文

EXP导出aud$报错EXP-00008,ORA-00904 解决

2018-01-17 18:17 by AlfredZhao, 1437 阅读, 收藏, 编辑
摘要:主题: EXP导出aud$报错EXP 00008,ORA 00904 解决 环境: Oracle 11.2.0.4 问题: 在自己的测试环境,导出sys用户下的aud$表报错。 "1.故障现场" "2.跟踪处理" "3.匹配MOS文章" "4.使用MOS解决方案" 1.故障现场 导出sys用户下的表 阅读全文

ASM的备份集在文件系统上恢复测试

2017-09-03 10:03 by AlfredZhao, 314 阅读, 收藏, 编辑
摘要:背景: 最近时常有客户咨询这类问题,其实很简单一个操作,但由于每个人的理解差异,也容易出现各种问题或者误解,本文主要总结下这个过程以及常遇到的问题处理。 环境: Site A(Oracle RAC 11.2.0.4) + Site B(Single Instance DB 11.2.0.4,只安装了 阅读全文

catalog start with + switch database to copy的妙用

2017-08-31 17:28 by AlfredZhao, 902 阅读, 收藏, 编辑
摘要:catalog start with + switch database to copy的妙用 环境: RHEL6.4 + Oracle 11.2.0.4 Primary RAC + Standby RAC 现象: 从主库恢复控制文件之后,由于是OMF管理的方式,导致ASM上存储的数据文件名字和控制 阅读全文

案例:数据库open时报错ORA-1172,ORA-1151 处理

2017-08-15 11:11 by AlfredZhao, 264 阅读, 收藏, 编辑
摘要:环境: OEL 5.7 + Oracle 10.2.0.5 Clusterware + Oracle 10.2.0.5 RAC 故障: 数据库open时报错ORA 1172,ORA 1151 "1.故障详细" "2.原因定位" "3.尝试修复" 1.故障详细 几年前的10gRAC实验环境,整体冷备迁 阅读全文

Oracle RAC 实验环境RMAN备份v1.01

2017-08-08 08:19 by AlfredZhao, 1089 阅读, 收藏, 编辑
摘要:Oracle RAC 实验环境RMAN备份v1.01 环境: RHEL 6.5 + Oracle GI 11.2.0.4 + RAC 11.2.0.4 (2 nodes) 需求: 制定RAMN备份策略 版本: v1.01 说明: 之前说过本系列的实验环境宗旨就是完全模拟生产环境,所有的操作记录在案, 阅读全文

RMAN备份到共享存储失败(win平台)

2017-07-26 16:55 by AlfredZhao, 733 阅读, 收藏, 编辑
摘要:RMAN备份到共享存储失败(win平台) 之前在《 "Win环境下Oracle小数据量数据库的物理备份" 》这篇文章中,介绍了在win平台下对于小数据量的数据库的物理备份设计。 文中重点提到,强烈建议备份文件有单独的存储,防止存储单点故障时备份文件亦不可用。 当我在实验环境实际去模拟这种使用单独存储 阅读全文

Win环境下Oracle小数据量数据库的物理备份

2017-07-09 10:04 by AlfredZhao, 288 阅读, 收藏, 编辑
摘要:Win环境下Oracle小数据量数据库的物理备份 环境:Windows + Oracle 单实例 数据量:小于20G 重点:需要规划好备份的路径,建议备份文件和数据库文件分别存在不同的存储上。 "1.开启归档模式" "2.制定备份策略" 1.开启归档模式 此步骤需要停库,需提前申请停机时间(10分钟 阅读全文

在NAS设备上用NFS服务为RAC数据库和集群件存储oracle文件时的mount选项

2017-03-25 23:47 by AlfredZhao, 1526 阅读, 收藏, 编辑
摘要:今天在家折腾自己的小实验室,把自己NAS上的一个目录用NFS挂载到一套11g RAC的实验环境中。 当我在备份数据库到NAS上时,发现一个奇怪的问题,同样的目录下,默认backup 备份集的情况,备份是成功的,但如果使用backup as copy备份则会报错,现象如下: 看backup as co 阅读全文

Oracle数据块损坏的恢复实例

2017-03-24 15:18 by AlfredZhao, 1811 阅读, 收藏, 编辑
摘要:测试环境:11.2.0.4 "1.构建数据块损坏的测试环境" "2.有备份:常规恢复坏块" "3.无备份:跳过坏块" 1.构建数据块损坏的测试环境 1.1 创建测试表 1.2 查询表中每一行对应的文件号和块号 1.3 使用bbed工具模拟破坏6号数据文件的3893数据块 关于bbed的编译和使用可参 阅读全文

$ORACLE_HOME变量值末尾多“/”惹的祸

2016-12-25 22:57 by AlfredZhao, 302 阅读, 收藏, 编辑
摘要:之前一直误以为$ORACLE_HOME变量的路径中末尾多写一个"/"不会有影响。 今天做实验时碰到一个情景,发现并不是这样。 环境:OEL 5.7 + Oracle 10.2.0.5 该环境做一个oracle的rman备份实验,发现脚本并未执行成功,直接报错数据库不可用,而实际上数据库服务本身是正常 阅读全文

记录一则RMAN备份策略修正案例

2016-02-17 20:55 by AlfredZhao, 1513 阅读, 收藏, 编辑
摘要:背景:在给某客户处理问题时,发现客户数据库的备份空间即将用尽,进一步查看发现是用户数据库的当前RMAN备份策略存在潜在问题,需要修改备份策略。 环境:SunOS 5.10 + Oracle 11.2.0.3 "1.分析当前RMAN备份策略的问题" "2.拟出解决方案供客户选择" "3.根据实际情况决 阅读全文

Oracle数据块损坏篇之10231内部事件

2016-01-19 16:20 by AlfredZhao, 1336 阅读, 收藏, 编辑
摘要:实验:某个分区数据块损坏,不完全恢复此分区表数据背景:数据库没有有效备份,某个分区中有数据块损坏。要求:最大限度恢复此分区数据。环境:RHEL 6.4 + Oracle 11.2.0.4 "1. 初始化实验环境" "2. 模拟分区中有数据块损坏情景" "3. 尝试使用Oracle内部事件1023... 阅读全文

Oracle 11g 编译使用BBED

2016-01-18 16:19 by AlfredZhao, 2250 阅读, 收藏, 编辑
摘要:环境:RHEL 6.4 + Oracle 11.2.0.4 "1. 拷贝缺失文件" "2. 编译BBED" "3. BBED使用测试" "Reference" <h1 id="1" 1. 拷贝缺失文件</h1 11g中缺失几个相关文件,但我们实际可以从10g拷贝相关文件到11g对应目录下: <... 阅读全文

RMAN Catalog创建、配置和管理

2015-10-09 18:01 by AlfredZhao, 5549 阅读, 收藏, 编辑
摘要:环境:RHEL6.4 + Oracle 11.2.0.4一、 "创建数据库catdb" "1.1 官档的建库脚本示例" "1.2 根据我实际环境修改如下项" "1.3 创建必要目录并赋予权限" "1.4 执行脚本建库" 二、 "配置catdb为catalog数据库" "2.1 创建表空间"... 阅读全文

RMAN异机恢复快速参考

2015-09-14 14:43 by AlfredZhao, 6919 阅读, 收藏, 编辑
摘要:应用场景: 服务器A为正常运行的生产环境,需要在服务器B上部署一套相同环境做测试。 数据库环境: RHEL6.4 + Oracle 11.2.0.4.7一、 "服务器A备份数据库" "1.1 在线备份(数据库运行在归档模式)" "1.2 备份脚本内容" 二、 "服务器B恢复数据库" "2.1... 阅读全文

Oracle Recovery 02 - 常规恢复之不完全恢复

2015-08-14 12:39 by AlfredZhao, 3743 阅读, 收藏, 编辑
摘要:背景:这里提到的常规恢复指的是数据库有完备可用的RMAN物理备份。实验环境:RHEL6.4 + Oracle 11.2.0.4 单实例.二、 "常规恢复之不完全恢复:部分数据丢失" "2.1 重做日志文件丢失或损坏" "2.2 重做日志文件,数据文件丢失或损坏" "2.3 控制文件丢失或损坏"... 阅读全文

如何删除回滚段状态为NEEDS RECOVERY的undo表空间

2015-08-13 12:06 by AlfredZhao, 1699 阅读, 收藏, 编辑
摘要:环境:RHEL 6.4 + Oracle 11.2.0.4背景:备份恢复的测试库在一次不完全恢复后,没有来及做有效的全备,又一次数据库故障导致数据库无法正常open。只能离线部分数据文件打开数据库,其中包含undo表空间数据文件。适用场景:无有效备份,可以丢失数据,删除回滚段状态为NEEDS REC... 阅读全文

Oracle Recovery 01 - 常规恢复之完全恢复

2015-08-07 11:49 by AlfredZhao, 2724 阅读, 收藏, 编辑
摘要:背景:这里提到的常规恢复指的是数据库有完备可用的RMAN物理备份。实验环境:RHEL6.4 + Oracle 11.2.0.4 DG primary.一、[常规恢复之完全恢复:不丢失数据](#1)- [1.1 单个数据文件丢失或损坏](#1.1)- [1.2 所有数据文件丢失或损坏](#1.2)- ... 阅读全文

DRA(Data Recovery Advisor)的使用

2015-08-05 14:34 by AlfredZhao, 840 阅读, 收藏, 编辑
摘要:关于DRA的官方描述: The simplest way to diagnose and repair database problems is to use the Data Recovery Advisor. This Oracle Database tool provides an infra 阅读全文

DG环境数据库RMAN备份策略制定

2015-05-04 18:06 by AlfredZhao, 1476 阅读, 收藏, 编辑
摘要:DG环境数据库RMAN备份策略制定: "主库(Primary)" "全库备份" "归档备份" "删除历史文件夹" "备库(Standby)" "删除归档" "引用说明" 主库(Primary) $ crontab l 全库备份 more /usr2/backupsh/full_backup.rman 阅读全文

ORA-00257 archiver error 处理思路

2015-04-23 22:16 by AlfredZhao, 484 阅读, 收藏, 编辑
摘要:"1.首先查下oerr给出的简要说明" "2.查询V$RECOVERY_AREA_USAGE信息" "3.根据实际空间剩余情况先适当增加归档目录的大小,保证先恢复业务" "4.查看备份是否存在问题" <h1 id="1" 1.首先查下oerr给出的简要说明 </h1 <h1 id="2"... 阅读全文

Oracle数据库常见的误操作恢复方法(上)

2015-03-13 22:16 by AlfredZhao, 1308 阅读, 收藏, 编辑
摘要:实验环境:Linux6.4 + Oracle 11g面向读者:Oracle开发维护人员概要:1.误操作drop了emp表2.误操作delete了emp表3.误操作delete了emp表的部分记录4.误操作truncate了emp表5.误操作带有purge选项drop了表本文以Oracle自带的sco... 阅读全文

EXP/IMP 导出生产库表的指定数据到测试库一例

2014-12-15 20:56 by AlfredZhao, 718 阅读, 收藏, 编辑
摘要:一般来讲,EXP/IMP是上一代导出导入程序,EXPDP/IMPDP是新一代的导出导入程序。对于大数据量的导出导入首选EXPDP/IMPDP,可以用到并行度,对表空间等操作上也更加的灵活。对于小数据量的迁移,可以使用exp/imp,操作更简单。需求: exp 导出 A库(11.2.0.3)zjy用户... 阅读全文

在非归档模式下不能更改表空间为备份模式

2014-09-17 20:13 by AlfredZhao, 495 阅读, 收藏, 编辑
摘要:Oracle表空间设置为备份模式后,便可以联机对表空间下数据文件进行文件系统级别的copy备份操作,因为期间对表空间的修改都记录到数据库的重做日志文件中。由此想到数据库如果是非归档模式,那么这个表空间备份模式的时间必须不能超过联机日志被覆盖的时间,才能保证数据的修改不会丢失。那么Oracle对这种情... 阅读全文

RMAN备份注意事项

2014-08-15 00:13 by AlfredZhao, 405 阅读, 收藏, 编辑
摘要:1.建议最好打开控制文件的自动备份。2.如果没有打开控制文件的自动备份,一定注意备份的顺序,无论之前有无备份控制文件,备份全库以及归档之后,在最后一定要再次备份控制文件。3.使用%U,或者%d%T%s%p 惟一标识备份集。4.一定要有完整的备份日志留存。run块示例:--周日、周三全库备份run{a... 阅读全文

Oracle RMAN 备份一例

2014-07-18 23:03 by AlfredZhao, 798 阅读, 收藏, 编辑
摘要:Oracle RMAN备份一例:Solaris 10 + Oracle 11.2.0.3Shell:csh,安装有bash,脚本调用bash备份策略:周日0级备份,周一~周六1级备份,每6小时备份归档日志,每天清理历史文件夹.--0级备份脚本:#!/bin/bash#db0 level backup... 阅读全文