当前位置: 首页 > news >正文

【Oracle专栏】扩容导致数据文件 dbf 丢失,实操

 Oracle相关文档,希望互相学习,共同进步

风123456789~-CSDN博客


1.背景

        同事检查扩容情况,发现客户扩容后数据盘后,盘中原有文件丢失,再检查发现数据库没有启动。通过检查发现数据盘中丢失的是oracle的 dbf 表空间文件。数据库无法启动。

    检查情况:1)没有rman备份   2)dbf文件丢失  3)数据库无法启动

    总体解决思路:想办法把数据库启动起来,重新导入dmp文件

                             或者 最终如果还不行,重装 导入

2. 检查

2.1 检查状态

检查数据库状态:sql查询 或 show pdbs

-- 查看实例状态
SELECT status FROM v$instance;-- 查看数据库的启动状态
SELECT open_mode FROM v$database;

结果截图:

数据库启动状态 

结果分析:发现数据库是mount状态。

      mount状态:仅当前实例的控制文件被打开,数据文件未打开,在这个模式下可以进行如下操作:重命名数据文件、添加取消或重命名重做日志文件、设置归档模式、设置闪回、执行完整的数据库恢复操作等。 

2.2 问题排查

1)尝试启动

命令:alter database open;

结果截图:

分析:

SQL> alter database open;                                                                                 
alter database open                                                                                       
*                                                                                                         
ERROR at line 1:                                                                                          
ORA-01157: cannot identify/lock data file 18 - see DBWR trace file                                        
ORA-01110: data file 18: '/vdb1/oracle/ny_data_001.dbf

2)问题排查

发现/vdb1 文件为空,没有文件了

3)其他

因为数据库没有open,无法生产awr报告:

-- 生成AWR报告

@$ORACLE_HOME/rdbms/admin/awrrpt.sql;

-- 生成ADDM报告

@$ORACLE_HOME/rdbms/admin/addm.sql;

2.3 准备恢复

1)查看环境变量 家目录

echo  $ORACLE_HOME

 结果:/data/u01/app/oracle/product/19.3.0/dbhome_1

2)查看alert日志

cd $ORACLE_BASE/diag/rdbms/<db_name>/<oracle_sid>/trace/alert_<oracle_sid>.log

select file#,name,status from v$datafile;

3) 查看是否开启rman

命令:rman target /

     rman > report schema

 rman target /                          Recovery Manager: Release 19.0.0.0.0 - Production on Mon May 12 15:00:00 2025
Version 19.22.0.0.0                                              Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.connected to target database: ORCL (DBID=1622948453, not open)   RMAN> report schema;                                             using target database control file instead of recovery catalog   
Report of database schema for database with db_unique_name ORCL  List of Permanent Datafiles       

相关文章:

  • React 第四十节 React Router 中 useBeforeUnload的使用详细解析及案例说明
  • LeRobot 框架的核心架构概念和组件(中)
  • R语言机器学习算法实战系列(二十五)随机森林算法多标签分组分类器及模型可解释性
  • 机器视觉助力轨道缺陷检测
  • AR禁毒:科技赋能,筑牢防毒新防线
  • 【计算机视觉】OpenCV实战项目:GraspPicture 项目深度解析:基于图像分割的抓取点检测系统
  • 掌握Docker Commit:轻松创建自定义镜像
  • 双目云台摄像机:双摄安防功能全方位
  • 基于运动补偿的前景检测算法
  • [20250514] 脑机接口行业调研报告(2024年最新版)
  • Vue.js---嵌套的effect与effect栈
  • 《数据库原理》部分习题解析1
  • 数据防泄密安全:企业稳健发展的守护盾
  • NVMe简介2
  • C# 通过脚本实现接口
  • centos6.10在Macbook m芯片上使用
  • OpenCV CUDA 模块中用于在 GPU 上计算矩阵中每个元素的绝对值或复数的模函数abs()
  • 地磁-惯性-视觉融合制导系统设计:现代空战导航的抗干扰解决方案
  • 合并有重叠的时间区间的极简方法
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: 获取macOS App的Bundle路径信息.
  • 明查| 新一代AI诊疗系统可3秒筛查13种癌症?没有证据
  • 小耳朵等来了春天:公益义诊筛查专家走进安徽安庆
  • 今年前4个月上海对拉美国家进出口总值增长2%
  • 马上评|让查重回归促进学术规范的本意
  • 老人将房产遗赠给外孙,三个女儿却认为遗嘱应无效,法院判了
  • 中美经贸高层会谈在瑞士日内瓦举行