CN105068888B - 一种基于Oracle数据库的数据恢复方法 - Google Patents

一种基于Oracle数据库的数据恢复方法 Download PDF

Info

Publication number
CN105068888B
CN105068888B CN201510467851.1A CN201510467851A CN105068888B CN 105068888 B CN105068888 B CN 105068888B CN 201510467851 A CN201510467851 A CN 201510467851A CN 105068888 B CN105068888 B CN 105068888B
Authority
CN
China
Prior art keywords
data
field
database
tables
record
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510467851.1A
Other languages
English (en)
Other versions
CN105068888A (zh
Inventor
梁效宁
许超明
赵飞
朱星海
黄旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Original Assignee
SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201510467851.1A priority Critical patent/CN105068888B/zh
Publication of CN105068888A publication Critical patent/CN105068888A/zh
Application granted granted Critical
Publication of CN105068888B publication Critical patent/CN105068888B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Oracle数据库的数据恢复方法,包括以下步骤:S1:确定数据库的数据表;S2:得到表的所有信息;S3:得到记录的逻辑结构关系;S4:得到字段的具体信息;S5:得到数据恢复逻辑结构特征;S6:将数据组成数据表形式,并提取。本发明的有益效果如下:通过Oracle数据库结构,解析数据表中的记录和字段,找到每条记录的头部和字段的结构划分数据后提取,恢复数据效率高,对数据损坏,数据不连续的碎片级数据库也可以正常提取和恢复,数据恢复成功率高,有效降低因数据库损坏带来的损失。

Description

一种基于Oracle数据库的数据恢复方法
技术领域
本发明涉及信息安全技术领域,特别涉及一种基于Oracle数据库的数据恢复方法。
背景技术
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的适应高吞吐量的数据库解决方案;一个数据库含有各种成分,包括表、视图、存储过程、记录、字段、索引等。
但是数据库有时也会发生故障,导致无法访问数据,其中数据库损坏常见的原因有以下几种:事务日志问题。比如事务日志文件丢失;事务日志文件在操作过程中被误删;事务日志文件被损坏以及事务日志文件过大,导致硬盘的空间不足等;意外掉电或异常强制关机,造成数据文件损坏,主要数据库正在被读写过程中异常关机;数据库的表被破坏或索引等被破坏,或者数据库的其他对象被破坏或丢失等;删除了数据文件,或者更改了它的名字;硬盘损坏,造成数据和日志文件读写错误等;这些错误中部分数据库自己是可以采取容灾机制处理,保证数据可以正常访问,但是针对数据库表破坏,数据库被删除,或者数据文件被删除,此时数据库本身无法修复,就需要一个专门的方法来解决这些问题,解决办法大多是恢复丢失的数据库文件,进而恢复记录,但是如果文件是以碎片的形式存储,市面上有一些恢复数据库的方法就无从下手了;在此时就需要用到按照记录特征的方法来完成数据恢复,最大程度的保全关键数据的完整性。
本发明涉及到的部分专业术语:
Oracle数据库:Oracle数据库由于表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。总之,逻辑结构由逻辑存储结构(表空间,段,范围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和数据库链等)组成,而其中的模式对象(逻辑数据结构)和关系形成了数据库的关系设计。在Oracle数据库中,用户数据总是储存在自己创建的后缀名为DBF的表空间中。Oracle数据库在丢失或者异常时,可以咨询数据库管理员是否有备份的一样结构数据库,有则直接查看这个数据库中需要恢复的数据表,没有则按照数Oracle据库的设计文档来确定数据库中的表参数,如果都没有就只能在底层按照关键字段进行人工分析出数据表,具体操作就是按照已知的字段在Oracle数据库中按照GB2312编码在存储介质中检索找到字段,再结合数据库管理员提供的参数确定出关键表。
数据表:数据表(Table)简称表,由一组数据记录组成,数据库中的数据是以表为单位进行组织的。一个表是一组相关的按行排列的数据;每个表中都含有相同类型的信息。表实际上是一个二维表格,例如,一个班所有学生的考试成绩,可以存放在一个表中,表中的每一行对应一个学生,这一行包括学生的学号,姓名及各门课程成绩。
记录:表中的每一行称为一个记录,它由若干个字段组成。
字段:也称域。表中的每一列称为一个字段。每个字段都有相应的描述信息,如数据类型、数据宽度等。
发明内容
本发明针对现有技术的缺陷,提供了一种基于Oracle数据库的数据恢复方法,能有效的解决上述现有技术存在的问题。
为了实现以上发明目的,本发明采取的技术方案如下:
一种基于Oracle数据库的数据恢复方法,包括以下步骤:
S1:找Oracle数据库备份或者数据库设计文档,确定数据库中的数据表;
S2:根据S1中的数据库备份或者数据库设计文档选择并找到需要恢复数据的数据表,并得到数据表的所有信息;
S3:根据S2的数据表得到数据表中的每个记录的逻辑结构关系;
S4:根据数据库的类型说明与数据库的设计文档得到字段的具体信息;字段信息包括:数据类型、数据长度、数据排列逻辑顺序;
S5:由S1,S2,S3,S4的参数分析得到数据库存储的逻辑关系,得到数据恢复逻辑结构特征,详细流程如下:
S501:检索所有记录的头特征,找到所有记录的头;具体的在Oracle数据库中使用“0x2C01”两个字节作为数据特征头;
S502:根据数据表中的记录确定字段的组成结构,按照记录的排列顺序、字段的数据类型、数据宽度信息得到字段结构,按照所述字段结构分隔所有记录头后面的字段,具体为:
找到第一个记录头特征“0x2C01”,该特征后一字节为此记录的列数,再向后一字节为第一个字段的大小,向后为该字段内容,内容后的第一个字节为下一个字段大小,如此循环直至下一个记录的头部特征“0x2C01”,再进行下一个记录的结构分析,直至完成所有表中的记录;
S6:得到数据表的逻辑结构特征,按照关键记录的排列顺序、字段的数据类型、字段数据宽度信息,将所述排列顺序、字段的数据类型、字段数据宽度信息按照数据提取逻辑特征算法在介质中提取关键的记录数据,将所述记录数据组成数据表形式,并提取。
与现有技术相比本发明的优点在于:通过Oracle数据库结构,解析数据表中的记录和字段,找到每条记录的头部和字段的结构划分数据后提取,恢复数据效率高,对数据损坏,数据不连续的碎片级数据库也可以正常提取和恢复,数据恢复成功率高,有效降低因数据库损坏带来的损失。
附图说明
图1为本发明实施例中记录的结构示意图;
图2为本发明实施例中记录的底层结构图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明做进一步详细说明。
一种基于Oracle数据库的数据恢复方法,包括以下步骤:
S1:找Oracle数据库备份或者数据库设计文档,确定数据库中的数据表;
S2:根据S1中的数据库备份或者数据库设计文档选择并找到需要恢复数据的数据表,并得到数据表的所有信息;
S3:根据S2的数据表可以得到数据表中的每个记录的逻辑结构关系;一个记录,它由若干个字段组成;如图1所示,本记录由“EMPNO、ENAME、JOB、MGR、HIREDATE、SAL、COMM、DEPTN”8个字段组成;
S4:根据数据库的类型说明与数据库的设计文档可以得到字段的具体信息;字段信息包括:数据类型、数据长度、数据排列逻辑顺序;Oracle采用可变长类型存放字段,如图1所示,EMPNO类型为NUMBER(4),表示最大长度为4,ENAME的类型为VARCHAR2(10),表示最大长度为10;
S5:由S1,S2,S3,S4的参数分析得到数据库存储的逻辑关系,得到数据恢复逻辑结构特征,详细流程如下:
S501:检索所有记录的头特征,找到所有记录的头;具体的在Oracle数据库一般是使用“0x2C01”两个字节作为数据特征头。
S502:根据数据表中的记录确定字段的组成结构,可以按照记录的排列顺序、字段的数据类型、数据宽度信息得到字段结构,按照字段结构分隔所有记录头后面的字段,
具体为:找到第一个记录头特征“0x2C01”,该特征后一字节为此记录的列数,再向后一字节为第一个字段的大小,向后为该字段内容,内容后的第一个字节为下一个字段大小,如此循环直至下一个记录的头部特征“0x2C01”,再进行下一个记录的结构分隔,直至完成所有记录的分隔;
S6:得到数据表的逻辑结构特征,可以按照关键记录的排列顺序、字段的数据类型、字段数据宽度信息,将这些信息按照数据提取逻辑特征算法在介质中提取关键的记录数据,将这些数据组成数据表形式,并提取。
如图2所示,找到第一个记录头特征“0x2C01”,“0x2C01”后接着是“0x08”代表此表有8列记录,后面是第一个记录EMPNO的长度“0x03”表示长度为3个字节,“0xC25023”为EMPNO的内容,“0xC25023”后为ENAME的长度“0x06”表示长度为6个字节,后面6个字节“0x4D494C4C4562”为ENAME的内容;如此循环直至下一个记录的头部特征“0x2C01”,在进行下一个记录的结构分析,直至完成所有表中的记录。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

Claims (1)

1.一种基于Oracle数据库的数据恢复方法,其特征在于包括以下步骤:
S1:找Oracle数据库备份或者数据库设计文档,确定数据库中的数据表;
S2:根据S1中的数据库备份或者数据库设计文档选择并找到需要恢复数据的数据表,并得到数据表的所有信息;
S3:根据S2的数据表得到数据表中的每个记录的逻辑结构关系;
S4:根据数据库的类型说明与数据库的设计文档得到字段的具体信息;字段信息包括:数据类型、数据长度、数据排列逻辑顺序;
S5:由S1,S2,S3,S4的参数分析得到数据库存储的逻辑关系,得到数据恢复逻辑结构特征,详细流程如下:
S501:检索所有记录的头特征,找到所有记录的头;具体的在Oracle数据库中使用“0x2C01”两个字节作为数据特征头;
S502:根据数据表中的记录确定字段的组成结构,按照记录的排列顺序、字段的数据类型、数据宽度信息得到字段结构,按照所述字段结构分隔所有记录头后面的字段,具体为:
找到第一个记录头特征“0x2C01”,该特征后一字节为此记录的列数,再向后一字节为第一个字段的大小,向后为该字段内容,内容后的第一个字节为下一个字段大小,如此循环直至下一个记录的头部特征“0x2C01”,再进行下一个记录的结构分析,直至完成所有表中的记录;
S6:得到数据表的逻辑结构特征,按照关键记录的排列顺序、字段的数据类型、字段数据宽度信息,将所述排列顺序、字段的数据类型、字段数据宽度信息按照数据提取逻辑特征算法在介质中提取关键的记录数据,将所述记录数据组成数据表形式,并提取。
CN201510467851.1A 2015-08-03 2015-08-03 一种基于Oracle数据库的数据恢复方法 Active CN105068888B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510467851.1A CN105068888B (zh) 2015-08-03 2015-08-03 一种基于Oracle数据库的数据恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510467851.1A CN105068888B (zh) 2015-08-03 2015-08-03 一种基于Oracle数据库的数据恢复方法

Publications (2)

Publication Number Publication Date
CN105068888A CN105068888A (zh) 2015-11-18
CN105068888B true CN105068888B (zh) 2018-08-14

Family

ID=54498265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510467851.1A Active CN105068888B (zh) 2015-08-03 2015-08-03 一种基于Oracle数据库的数据恢复方法

Country Status (1)

Country Link
CN (1) CN105068888B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653403B (zh) * 2016-02-29 2018-06-22 厦门市美亚柏科信息股份有限公司 一种mdb文件数据的恢复方法及其系统
CN105677914A (zh) * 2016-02-29 2016-06-15 厦门市美亚柏科信息股份有限公司 一种mdb文件表格的恢复方法及其系统
CN108021469B (zh) * 2016-10-31 2020-10-27 中国电信股份有限公司 数据修复方法和装置
CN106897174B (zh) * 2017-03-01 2021-01-01 四川艾特赢泰智能科技有限责任公司 一种针对mysql数据库的碎片恢复方法
CN108536845A (zh) * 2018-04-16 2018-09-14 中国刑事警察学院 残缺数据库文件检验方法
CN109710462B (zh) * 2018-12-25 2023-05-30 四川巧夺天工信息安全智能设备有限公司 一种基于access样本数据库的碎片数据恢复方法
CN111278200A (zh) * 2020-03-15 2020-06-12 饶子佳 一种智慧路灯实时功耗及运行状态的检测方法
CN112732487B (zh) * 2021-01-07 2024-01-23 中国银联股份有限公司 一种数据恢复方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008957A (zh) * 2006-01-24 2007-08-01 国际商业机器公司 用于从备份数据映像建立数据库的方法和系统
CN101908064A (zh) * 2010-07-20 2010-12-08 中兴通讯股份有限公司 数据库备份恢复方法和装置
CN102063491A (zh) * 2010-12-30 2011-05-18 浪潮集团山东通用软件有限公司 可实现跨不同类型数据库数据备份恢复的数据结构和实现方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01261745A (ja) * 1988-04-08 1989-10-18 Internatl Business Mach Corp <Ibm> データ・ベース・レコードのトランザクシヨンの回復方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008957A (zh) * 2006-01-24 2007-08-01 国际商业机器公司 用于从备份数据映像建立数据库的方法和系统
CN101908064A (zh) * 2010-07-20 2010-12-08 中兴通讯股份有限公司 数据库备份恢复方法和装置
CN102063491A (zh) * 2010-12-30 2011-05-18 浪潮集团山东通用软件有限公司 可实现跨不同类型数据库数据备份恢复的数据结构和实现方法

Also Published As

Publication number Publication date
CN105068888A (zh) 2015-11-18

Similar Documents

Publication Publication Date Title
CN105068888B (zh) 一种基于Oracle数据库的数据恢复方法
CN105068887B (zh) 一种基于被损坏SQLServer数据库的数据恢复方法
US10565070B2 (en) Systems and methods for recovery of consistent database indexes
CN103853718B (zh) 分片数据库访问方法及数据库系统
CN106021031B (zh) 一种btrfs文件系统的删除数据恢复方法和装置
CN103617277A (zh) 一种还原误删除的数据表内容的方法
CN106844089B (zh) 一种用于恢复树形数据存储的方法与设备
US10459804B2 (en) Database rollback using WAL
CN105677876B (zh) 一种基于物理级的数据库日志挖掘方法
WO2020119143A1 (zh) 一种数据库删除记录的恢复方法及系统
CN112052121B (zh) 一种硬盘数据的恢复方法及系统
CN108009049B (zh) Myisam存储引擎删除记录离线恢复方法、存储介质
CN108874321A (zh) 一种独立冗余磁盘阵列数据重构方法、装置及设备
CN106897174B (zh) 一种针对mysql数据库的碎片恢复方法
CN103176867B (zh) 一种快速文件差异备份方法
CN106155838A (zh) 一种数据库备份数据恢复方法及装置
CN108647118A (zh) 基于存储集群的副本异常恢复方法、装置及计算机设备
US20070174329A1 (en) Presenting a reason why a secondary data structure associated with a database needs rebuilding
CN110764943B (zh) 一种Oracle数据库的数据处理方法及装置
CN102063365B (zh) 一种记录单板运行信息的方法及装置
CN107704548A (zh) 一种存储介质和对象数据的存储方法、装置及设备
CN106708830A (zh) 一种基于大型数据库的数据恢复方法
CN107229538A (zh) 一种文件合成备份的方法
CN111221801A (zh) 一种数据库迁移方法、系统及相关装置
Srinivasan et al. Recoverable file system for microprocessor systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 641000 Sichuan province Neijiang City Songshan Road No. 183

Applicant after: SICHUAN XLY INFORMATION SAFETY TECHNOLOGY CO., LTD.

Address before: 641000 Sichuan province Neijiang City Songshan Road No. 183

Applicant before: Sichuan SalvationData Information Safety Technology Co., Ltd.

CB02 Change of applicant information
CB03 Change of inventor or designer information

Inventor after: Liang Xiaoning

Inventor after: Xu Chaoming

Inventor after: Zhao Fei

Inventor after: Zhu Xinghai

Inventor after: Huang Xu

Inventor before: Liang Xiaoning

Inventor before: Xu Chaoming

Inventor before: Zhao Fei

Inventor before: Fan Chaobo

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant