oracel回退文件UNDOTBS01.DBF损坏后,oracle数据库不能装载,数据无法读取。上星期五,jh区局发生了这种情况。

发生问题后有两种处理方式:有备份的情况和没有备份的情况;

有备份的情况:

1、删除坏的UNDOTBS01.DBF,将备份的回退文件UNDOTBS01.DBF拷回原处;

2、进入SQLPLUS;

3、startup;

系统出错提示:

ORA-01157: cannot identify/lock data file 2 - see DBWR

trace file

ORA-01110: data file 2:

'/home/oracle/oradata/esal/undotbs01.dbf'

4、recover database;

系统自动恢复;

5、alert database open;

成功打开数据库;

无备份的情况:

1、删除坏的UNDOTBS01.DBF;

2、连接到数据库

SQL> connect sys/oracle as sysdba

Connected.

SQL> startup force

ORACLE instance started.

错误同样

ORA-01157: cannot identify/lock data file 2 - see DBWR

trace file

ORA-01110: data file 2:

'/home/oracle/oradata/esal/undotbs01.dbf'

3 查看rollback_segments

SQL> show parameter rollback

NAME TYPE VALUE

---------------------- -----------

------------------------------

fast_start_parallel_rollback string LOW

max_rollback_segments integer 37

rollback_segments string

transactions_per_rollback_segment integer 5

4 修改初始化参数

###########################################

# System Managed Undo and Rollback Segments

###########################################

undo_management=MANUAL

undo_retention=10800

undo_tablespace=undotbs01  rollback_segments='SYSTEM'

5 启动数据库

SQL> connect sys/oracle as sysdba

Connected.

SQL> startup force

ORACLE instance started.

...

Database mounted.

ORA-01157:

cannot identify/lock data file 2 - see DBWR trace file

ORA-01110:

data file 2: '/home/oracle/oradata/esal/undotbs01.dbf'

6将undotbs01离线;

SQL> alter database datafile

'/home/oracle/oradata/esal/undotbs01.dbf' offline drop;

Database altered.

SQL> alter database open;

Database altered.

7删除undotbs01

SQL>

drop tablespace undostb01;

Tablespace dropped.

8创建新的UNDO文件

SQL>

create undo tablespace undotbs1 datafile

'/home/oracle/oradata/esal/undotbs01.dbf' size 200M autoextend

on;

Tablespace created.

9修改参数文件;

SQL> create spfile from pfile;

File created.

将参数文件修改如下:

###########################################

# System Managed Undo and Rollback

Segments

###########################################

undo_management=AUTO

undo_retention=10800

undo_tablespace=undotbs01

10重新打开数据库

SQL> connect xxx/xxx@xxx as sysdba

Connected.

SQL> startup force

ORACLE instance started.

Database mounted.

Database opened.

幸运的是,JH局有备份,情况就比较简单了,用第一种方法,10分钟就搞定了,但是时间花在了备份现场在,用了一个小时。

需要注意的是:

1、做以上操作前都要做冷备份,一但有问题至少可以恢复到问题现场点。

2、以上方法仅适用于只有UNDO表空间损坏,其它系统表和日志是好的情况。

3、出问题后先看看日志,并用SQLPLUS进命令行看看情况,不要匆忙关闭数据库重启;

oracle undo数据文件坏,oracle回退文件UNDOTBS01.DBF损坏的处理相关推荐

  1. oracle undo数据文件坏,oracle undo数据文件损坏故障处理案例

    oracleundo数据文件损坏故障处理案例 大家都知道Oracle的数据都存储在数据文件中,undo表空间存储的数据是某些变更操作的前镜像以及一致性读数据,而且undo表空间是循环利用的,一段时间后 ...

  2. oracle中数据文件创建,操作oracle中的数据文件

    收藏于http://dev.yesky.com/296/8090796.shtml Oracle数据库 中管理表空间和数据文件 数据库的三大组成部分:数据文件,控制文件,Redo日志. 表空间分为系统 ...

  3. oracle修改数据前备份,Oracle 之利用BBED修改数据块SCN—-没有备份数据文件的数据恢复...

    测试环境 OS:redhat6.6 oracle:12.1.0.2 BBED(OracleBlockBrowerandEDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle ...

  4. oracle数据块坏,Oracle数据块损坏解决办法

    背景: 1.PDM(Windchill)系统 2.exp数据错误,没有rman备份数据 3.数据库trc文件报错 Dump file d:\oracle\admin\wind\udump\wind_o ...

  5. oracle中dbf文件过大怎么解决,undotbs01.dbf文件太大解决方案

    缩小Oracle目录下UNDOTBS01.DBF文件的大小 使用sys用户登录Oracle 方法一:重置表空间大小 Linux下执行 ALTER DATABASE DATAFILE '/opt/ora ...

  6. oracle undo管理机制,Oracle UNDO数据概念和管理

    UNDO数据也称为回滚(ROLLBACK)数据,它用于确保数据的一致性.UNDO表空间用于存放UNDO数据,当执行DML操作(INSERT,UPDATE和DELETE)时,oracle会将这些操作的旧 ...

  7. oracle undo段的作用,Oracle数据库中Undo数据段的作用及类型

    Undo数据段的作用: 事务回滚(Transaction Rollback):程序执行rollback操作. 事务修复(Transaction Recovery):rollback是recovery的 ...

  8. oracle之数据同步:Oracle Sql Loader使用说明(大批量快速插入数据库记录)

    1.准备表数据 select * from emp10;create sequence seq_eseq increment by 1 start with 1001 maxvalue 9999999 ...

  9. 根据oracle入库数据进行告警,Oracle 启动故障案例之--ORA-600 [4193]错误

    ORA-600[4193] 这个错误也是与UNDO 有关系,MOS 上有几篇相关的说明文章. 一.MOS说明 1.1 ORA-600 [4193] WhenTrying To Open The Dat ...

最新文章

  1. mysql 函数rep_Mysql之各种各样的函数啦
  2. 在windows sever 2008系统中如何添加桌面体验功能
  3. pika-NoSQL原理概述
  4. php7.1安装redis,php7安装redis扩展
  5. 权限列表(包字典)递归成树状结构
  6. Vue学习笔记(一)—— 常用特性
  7. Lazarus 日志工具 MultiLog
  8. 蓝桥杯2018年第九届C/C++省赛B组第三题-乘积尾零
  9. 一种自适应模拟退火粒子群优化算法-附代码
  10. SPSS 数据的统计分析
  11. 所有程序员都应该知道的 6 个软件开发步骤
  12. 什么是PLC可编程控制器,理论基础知识讲解QY-KC801
  13. 心绞痛--大柴胡汤合桂枝茯苓丸---胡希恕
  14. Typecho情侣博客Brave主题源码
  15. python dataframe根据多列排名并生成序号_将rank字段添加到pandas dataframe,按唯一组和多列排序...
  16. MacOS使用conan
  17. mt4支持python么_mt4 python
  18. 数字IC设计笔试题汇总(一)
  19. 布林通道参数用20还是26_布林通道最佳参数
  20. 仪表盘(用ECharts绘制)

热门文章

  1. 开源|携程机票 App KMM 跨端 KV 存储库 MMKV-Kotlin
  2. 微机原理与接口技术课程设计——数字电压表的设计(含完整代码与实验连接图)
  3. 清华大学生起诉ofo索要押金99元,结果 “倒赔”400元?
  4. java excel 列数_计算Excel工作表列中的行数(提供的Java代码)
  5. 2021-07-22相机检校
  6. php dynamic library,PHP Startup: Unable to load dynamic library 问题。
  7. Winner(翻译)
  8. More Effective C++之 Item M30:代理类
  9. 音乐也社交:多米音乐App 5.0版更新,新添歌单功能,把UGC引入社区中
  10. ios输入框的坑(软键盘弹出不灵敏、输入法影响弹出高度)