SOLARIS系统下ORACLE数据恢复案例

article/2025/9/28 22:00:27

服务器数据恢复环境:
两台SPARC SOLARIS操作系统服务器通过光纤交换机共享一台存储作为集群使用。平时是一台服务器(以下称为主服务器)在运行,如果该服务器发生故障宕机,只需要将这台服务器关机后开启另外一台服务器(以下称备用服务器)进行接管即可。由于配置不当,两台服务器不能很好地对存储互斥。

 

服务器故障&分析:
管理员在对服务器进行巡检时开启备用的那台服务器,该服务器连接了一组未知的大容量磁盘。由于该服务器在主服务器正常工作的情况下不会启用,处于闲置的状态,所以管理员误以为该服务器连接的这块大容量磁盘也处于闲置状态,于是将该大容量磁盘的某个分区做了newfs。然而这个大容量磁盘就是那台共享存储,主服务器报警宕机。
为了挽救数据,管理员做了以下操作:1、重启主服务器,但所有文件系统均无法挂载。2、执行fsck,多数分区的数据修复成功,只有在备用服务器做过newfs的文件系统有问题,根目录下只有一个lost+found文件夹,里面有大量数字标号的文件。
故障文件系统存储了两组ORACLE实例,原文件系统为UFS,约有200~400个数据文件需要恢复。
这是一个典型的由于配置不当,服务器不能很好地对存储互斥导致共享冲突的案例。本案例中的2台服务器同时对UFS这个单机文件系统进行访问,以想当然的独享方式对存储进行管理,主服务器管理的文件系统其实在底层上已经被备用服务器做了文件系统初始化,主服务器从缓冲区写入文件系统的数据也会破坏备用服务器初始化的结果。

在备用服务器上执行newfs会作用于原先的文件系统之上,但本案例中的情况和单纯的newfs有些不同。在主服务器宕机之前,会有一小部分数据(包括元数据)会写回文件系统。文件系统newfs如果结构与之前的相同,数据区是不会被破坏的。
UFS是传统的UNIX文件系统,以块组切割,每块组分配若干固定的inode区。文件系统newfs时,如果结构与之前的相同,文件系统最重要的inode区会全部初始化,之前的无法保留。inode管理着所有文件的重要属性,所以单纯从文件系统角度考虑,数据恢复的难度很大。由于oracle数据文件的强结构性和UFS的存储规律性,可以通过重组oracle数据文件的结构,将数据文件、控制文件、日志等恢复出来。同时,oracle数据文件本身会有表名称描述,可以反向推断原来的磁盘文件名。

 

服务器数据恢复过程:
1、对故障文件系统做镜像备份。
2、北亚企安数据恢复工程师基于镜像文件分析&重组oracle数据结构。
3、对部分结构混乱,无法重组的文件,北亚企安数据恢复工程师参考ufs结构特征进行辅助分析。
4、利用恢复的数据文件、控制文件在oracle平台恢复数据库。
5、恢复完成后,由用户方工程师进行检测,经过反复检测,用户方确认恢复出来的数据完整有效。本次数据恢复工作完成。

服务器数据恢复总结:
fsck是很致命的操作,在执行fsck操作之前最好做备份。

 


http://chatgpt.dhexx.cn/article/ZtsPBqRw.shtml

相关文章

Oracle数据恢复

1、查询Oracle日志表 select * from v$sql ; select * FROM v$sqlarea ; 2、查询表的最新操作,找到被删除的数据 select * from v$sql where sql_text like %ABNORMAL_ORDERS% ORDER BY FIRST_LOAD_TIME desc; 找到操作的时间 FIRST_LOAD_TIME,SQ…

【服务器数据恢复】EXT3文件系统下Oracle数据库数据恢复案例

服务器数据恢复环境: 华为OceanStor某型号存储,十几块FC硬盘组建一组RAID5磁盘阵列,配备了一块热备盘;上层使用EXT3文件系统,配置了oracle数据库。 服务器故障: 该存储RAID5中的一块硬盘未知原因离线&…

Oracle-Oracle数据库备份与恢复

Oracle数据库备份与恢复 下面通过一些简单的例子来了解一下: Oracle数据库各种物理备份的方法。Oracle数据库各种物理恢复的方法利用RMAN工具进行数据库的备份与恢复。数据的导出与导入操作。 (1)关闭BOOKSALES数据库,进行一次完全冷备份。 select file…

Oracle—数据恢复

文档结构 1、恢复原理1.1、recyclebin(回收站)相关操作 1.2、archived redo(归档日志)1.3、supplemental log(补充日志) 2、恢复场景2.1、定义删除2.2、记录删除2.2.1、undo恢复2.2.2、redo恢复2.2.3、dbms…

Oracle数据库数据丢失恢复的几种方法总结

根据oracle数据库的特点和提供的工具,主要方法有以下几种方法: 利用逻辑备份使用import工具丢失数据的表 利用物理备份来通过还原数据文件并进行不完全恢复 利用dbms_logmnr包从redo log文件中恢复 利用flashback特性恢复数据 前提 为了方便…

QSS美化

摘自:https://qtdebug.com/qtbook-qss/ Qt 提供的 widget 的默认外观很多时候都不符合项目的界面需求,必须要改,修改一个 widget 的外观(Look and Feel)有以下的方法: 继承 Widget,然后在 pain…

Qss换肤设置

前言:本文大部分的内容来源于同类博客。章节1.1-1.3 摘自参考文档:http://www.th7.cn/web/html-css/201405/37286.shtml。1.4摘自参考文档。https://blog.csdn.net/Staranywhere/article/details/106967756。本文仅用作知识点整理。 目录: 1…

qss之QRadioButton

先来个示例 QRadioButton {font-family: "Microsoft YaHei";font-size: 14px;color: #BDC8E2;background-color: #2E3648; }效果图如下: 上面的例子是基本的样式设置,下面我们将探讨 QRadioButton 各种样式设置: 字体样式 font…

QSS的使用

QSS官方文档:https://doc.qt.io/qt-5/stylesheet-reference.html 图标制作例子: normal hover press disable 图标制作 按钮设计指南 按钮多态的几种方法 一、程序应用qss文件 QString qssPath QString("%1/stylesheet/style.qss").arg(a.applicationD…

QSS属性大全

1、选择器 1.1、通用选择器 /* 格式:* { 属性: 值; } 通用选择器一般用来给应用程序设置统一的字体,大小,颜色等 */ * {font-family: "Microsoft YaHei";outline: 0px;color: #DCDCDC; }1.2、类型选择器 /* 格式: 类…

Qt之QSS使用与基本语法

一、QSS介绍 QSS是一种从CSS借鉴过来的机制,用来实现对控件外观的自定义。但是它比CSS功能要弱化一些,有一些属性和选择器,QSS并没有。 Qt中的各个控件可以使用QSS来实现界面的个性化定制、美化,使用起来也是特别方便的。 二、Q…

QTreeWidget样式qss

文章目录 QTreeWidget/QTreeView样式QHeaderView背景属性alternate-background-color:交替背景色background:背景属性background-color:控件的背景色background-image:用于控件的背景图像。如果图像有透明部分则显示透明部分。bac…

qss文件使用

每个控件提供的样式太少?只能简单的设置颜色、字体颜色、字体大小?每次设置都要输入好长一串好麻烦? 现在你只要写一段qss就能满足你的一切需求,实现效果如下 本文将从下面三个方向慢慢阐述qss的使用 1、如何使用qss 2、如何修…

QSS 基础

如果你会 CSS,那么 QSS 对你来说将会非常简单,QSS 的语法和 CSS 的愈发非常相似,但也有些不同,有些 CSS 的东西在 QSS 里被去掉了,QSS 也加了些自己特有的东西,不过大多数还是差不多的,下面以修…

Qt QSS使用

一、选择器类型 Qt QSS选择器和CSS2、CSS3的选择器类似,建议先学习或者复习一下CSS选择器的语法。QSS虽然和CSS类型,但有也稍许不同,而且支持的语法也没那么多,具体讲解如下。 1.1 类选择器 /* 匹配QPushButton的实例及其子类 …

QSS 介绍

目录 一、自定义 widget 的两种方式二、一个简单示例三、QSS 比 QPalette 强大四、使用 Qt Designer 方便查看 qss 效果 一、自定义 widget 的两种方式 自定义 widget 外观的方式有两种: 子类化 QStyle;使用 Qt Style Sheets 机制; Qt Sty…

学习QSS样式表

文章目录 一、 什么是QSS二、辅助工具三、Qt样式表设置函数:setStyleSheet四、Qss选择器1、通用选择器2、类型选择器3、类选择器4、ID选择器5、后代选择器6、子元素选择器7、属性选择器8、并集选择器9、子控件选择器10、伪类选择器11、选择器的匹配规则 五、QSS常用…

QSS自定义属性

1.基本使用 &#xff08;参见 Qt 文档页章节 Setting QObject Properties&#xff1a;https://doc.qt.io/qt-5/stylesheet-syntax.html&#xff09; 从 Qt 4.3 及更高版本开始&#xff0c;可以使用 qproperty- <属性名称> 语法设置任何 designable 的 Q_PROPERTY &…

QSS

摘自&#xff1a;https://qtdebug.com/qtbook-qss/ Qt 提供的 widget 的默认外观很多时候都不符合项目的界面需求&#xff0c;必须要改&#xff0c;修改一个 widget 的外观&#xff08;Look and Feel&#xff09;有以下的方法&#xff1a; 继承 Widget&#xff0c;然后在 pai…

QSS 语法

目录 1. 基本语法1.1 样式规则1.2 选择器、声明1.3 大小写1.4 多个选择器 2. 选择器2.1 通用选择器&#xff1a;*2.2 类型选择器&#xff1a;QPushButton2.3 属性选择器&#xff1a;QPushButton[flat"false"]2.4 类选择器&#xff1a;.QPushButton2.5 ID 选择器&…