oracle 常见恢复
author by :shawnloong
环境:windows 2008 r2 sp1 db:oracle 11g r2
做之前记得做个完整备份
ONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
脚本如下
run {
delete noprompt obsolete;
allocate channel cha1 type disk;
allocate channel cha2 type disk;
backup database format "c:\bak\full_%d_%T_%s"
plus archivelog
format "c:\bak\arch_%d_%T_%s"
delete all input;
release channel cha1;
release channel cha2;
}
exit
保存为 rman.txt
windows 脚本
rman target / nocatalog CMDFILE 'e:/rman/rmanfull.txt' LOG 'e:/rman/rman_backup_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%".log'
linux 一样的用shell脚本调用
1.数据文件误删除恢复
shutdown immediate;
删除user01.dbf
启动数据库会报一个错误,实例已经启来了mount状态,但是数据库未打开

先将数据文件offline
SQL> alter database datafile 4 offline;
数据库已更改。
restore datafile 4;

recover datafile 4

最后数据库open

记得将数据文件online,不然会出现以下错误

alter database datafile 4 online

2.参数文件丢失
删除参数文件(路径C:\app\oracle\product\11.2.0\dbhome_1\dbs\)init.ora 注意做之前记得备份 操作之前还得记下dbid
SQL> select dbid from v$database;
DBID
----------
944333900
C:\app\oracle\product\11.2.0\dbhome_1\database

记得将pfile 和spfile都删除
这里涉及到pfile spfile 顺序
spfilesid 〉 spfile 〉 initsid

启动到nomount

还原参数文件 注意这里非autobackup


数据库已经启动

如果启动不了,设置一下dbid
set dbid
3.控制文件丢失
注意控制文件一般做了冗余了。
一般都有两个文件,默认安装在同一个文件下

如果删除时候删除一个可以用另外一个重建一下


测试将这两个控制文件都删除掉
关闭数据库后删除


报错



如果路径一致记得将catalog start with


恢复的时候记得resetlog

关于密码文件解释
位置及命名方式windows 下以PWD实例名
linux orapwd实例名
如果删除密码文件本地as sysdba可以登录
但是远程无法登录,会出现以下错误
重新密码文件
oracle 常见恢复的更多相关文章
- Oracle 实例恢复
-======================= -- Oracle 实例恢复 --======================= 一.Oracle实例失败 Oracle实例失败多为实例非一致性关闭所 ...
- Oracle Tuning 基础概述01 - Oracle 常见等待事件
对Oracle数据库整体性能的优化,首先要关注的是在有性能问题时数据库排名前几位等待事件是哪些.Oracle等待事件众多,随着版本的升级,数量还在不断增加,可以通过v$event_name查到当前数据 ...
- 将oracle冷备份恢复到另外一个数据库实例中
因更换服务器需要将Oracle数据库转移到另外台Oracle中.说明: 1.测试环境为:windows server2003 和 oracle 10g. 2.2台服务器安装的程序目录一样,数据目录不一 ...
- 【原创】ORACLE常见使用问题解决
ORACLE常见使用问题解决 一.安装了oracle客户端后,发现plsql客户端找不到之前已经配置过的TNS连接信息 或许大家再使用ORACLE软件的过程中,经常会遇到这样的问题: 问题现象描述: ...
- oracle数据库恢复与备份
一.oracle数据库恢复 1.恢复刚才删除的一条数据 delete from emp e where e.empname='SMITH' select * from flashback_transa ...
- Access、SQLServer、Oracle常见SQL语句应用区别
Access.SQLServer.Oracle常见SQL语句应用区别 关劲松 PMP 如果要兼容Access.SQL Server.Oracle三个数据库版本:我们在编写SQL语句的过程中,尽量使用一 ...
- oracle 日志恢复数据
1:首先查找redo,如果redo有可供恢复的信息,就那redo中的信息进行恢复,此时一般在恢复时,类似如下:SQL> recover database;Media recovery compl ...
- Oracle特殊恢复原理与实战(DSI系列)
1.深入浅出Oracle(DSI系列Ⅰ) 2.Oracle特殊恢复原理与实战(DSI系列Ⅱ) 3.Oracle SQL Tuning(DSI系列Ⅲ)即将开设 4.Oracle DB Performan ...
- Data Base oracle常见错误及解决方案
Data Base oracle常见错误及解决方案 一.TNS协议适配器错误: 原因: 此问题的原因都是由于监听没有配置好. 解决: 1.打开oracle工具Net Manager,删除服务及监听,重 ...
随机推荐
- enmo_day_08
性能监视 管理内存组件 自动内存管理(AMM) : 指定分配给实例的总内存(SGA, PGA) 自动共享内存管理(ASMM) : 指定SGA, 管理分配给共享池, java池, 动态性能视图 :v$( ...
- 常用IT类英文词汇 - 1
作为IT学生以及将来打算从事IT行业的人, 我们在开发时少不了要去阅读英文文档, 在面试及工作中也会涉及到相关的英文词汇, 因此具备一定的英语水准是必须的. 这里我就把我在学习中所遇到的英文词汇记录下 ...
- 软件项目第一个Sprint评论
团队软件评论: 极速蜗牛:个人认为,内部测试版应该是实现内容而不是UI界面,难道要让那些懂电脑的人们都去玩用户界面吗?UI界面完全可以放到beta版再进行修改,美工.不过这界面做的确实还可以.运行此游 ...
- Ubuntu12.04安装vscode i386
最近在Ubuntu12.04的32位版本上安装vscode,我下载的是32位deb包, vscode官网 安装命令 sudo dpkg -i vscode-i386.deb 安装完成没有报错,但是点 ...
- Day18_集合第四天
1.Map集合成员方法(掌握) 增加功能 V put(K key, V value) 当key在集合中不存在时,添加元素:当key在集合存在时候,替换元素 删除功能 void clear 清除所有键值 ...
- java进程性能分析步骤-超越昨天的自己系列(11)
java进程load过高分析步骤: top 查看java进程情况 top -Hp 查看某个进程的具体线程情况 printf 0x%x 确认哪一个线程占用cpu比较多,拿出来转成16进制 ...
- Lintcode Perfect Squares
Given a positive integer n, find the least number of perfect square numbers (for example,1, 4, 9, 16 ...
- odoo.cli.main()指的是哪里?OpenERP的第二根线头儿
接上回,odoo-bin中调用了odoo.cli.main(),去哪儿找? cli目录容易找 跟随__init__.py的脚步 import logging import sys import os ...
- 练习2:雨淋湿了一道题,9个数字只能看清楚4个,第一个肯定不是1 [X * (Y3 + Z)]^2 = 8MN9,求出各个数字
题目上的X代表的未知数,不一定是同一个数字. 其实这道题,直接一推敲答案就出来了,首先,积德尾数是9,说明 X*(Y3 + Z)的值尾数是3,3的因子只有1和3,所以X只有1和3候选,但是题目说第一个 ...
- C++实现不能被继承的类——终结类 分类: C/C++ 2015-04-06 14:48 64人阅读 评论(0) 收藏
1. 问题 C++如何实现不能被继承的类,即终结类.Java中有final关键字修饰,C#中有sealed关键字修饰,而C++目前还没有类似的关键字来修饰类实现终结类,需编程人员手动实现. ...