【技术实战】Oracle数据库数据提取的方法

数据库 Oracle
数据库是信息系统中不可或缺的部分。随着大数据时代的到来,数据库已经成为犯罪分子的目标,大量数据库被用于存放网络盗窃和网络诈骗中产生的数据。将涉案数据库的数据提取出来,成为了打击犯罪的重要手段之一。

数据库是信息系统中不可或缺的部分。随着大数据时代的到来,数据库已经成为犯罪分子的目标,大量数据库被用于存放网络盗窃和网络诈骗中产生的数据。将涉案数据库的数据提取出来,成为了打击犯罪的重要手段之一。

在众多数据库中,Oracle (全称OracleDatabase),一直是一款处于领先地位的关系数据库管理系统。因为其系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境,它是一种高效率、可靠性好的、适应高吞吐量的数据库解决方案。

也因为稳定性好、安全系数高等优势,Oracle数据库是众多大型企事业单位首选的数据库,如公安局的身份证数据信息存储、中国银行的数据信息存储、淘宝数据存储等。这些单位有一个共同特点:数据量大,要求数据准确,要求系统性能高。

现阶段,在众多案件的电子取证过程中我们也常常看到Oracle数据库的身影,今天,源妹儿就跟大家分享一种通过附加Oracle数据库提取数据库数据的方法。

数据提取思路

1、将Oracle数据库文件提取恢复出来;

2、在取证电脑上安装Oracle数据库,Oracle版本号需要与案例检材中Oracle版本号一样,然后将检材中的Oracle数据库文件拷贝到取证电脑,附加数据库文件(PS:附加数据库是整个数据提取过程中的核心所在,本文档将详细讲解附加数据库的过程);

3、附加完成后即可打开Oracle数据,提取记录数据。

操作步骤

1、使用专业的电子取证工具:DRS6800数据恢复系统(以下简称DRS),加载案例服务服务器镜像,提取镜像中的Oracle数据库文件,提取出来的Oracle数据库文件如下图:

2、在取证电脑中安装与检材中Oracle数据库版本相同的Oracle软件,并且创建与检材中相同实例名的数据库(Oracle安装过程本文档不详细介绍,网上很多Oracle的安装教程)。

3、Oracle安装成功并且创建了实例后,将数据库服务关闭,建议在cmd命令行使用如下语句完成: 

  1. sqlplus /nolog  
  2. conn /as sysdba  
  3. shutdown immediate  

4、关闭数据库后,将从检材中提取出来的Oracle数据文件替换到当前电脑的Oracle数据文件所在路径

5、Oracle数据文件替换完毕后,在cmd命令行以无挂载的方式重新启动数据库,使用如下命令完成 :startup nomount;

6、因为控制文件的记录了数据库的创建时间,数据文件的位置,日志文件的位置等,其作用是指导数据库找到数据文件,日志文件并将数据库启动到open状态,因为迁移的原因改变这些参数,因此需要重构控制文件,使用如下语句重构控制文件:

CREATE CONTROLFILE REUSE DATABASE "qsdb" NORESETLOGS ARCHIVELOG

MAXLOGFILES 5

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 1

MAXLOGHISTORY 226

LOGFILE

GROUP 1

'F:\app\xly\oradata\qsdb\redo01.log' SIZE 800M,

GROUP 2 

'F:\app\xly\oradata\qsdb\redo02.log' SIZE 800M,

GROUP 3

'F:\app\xly\oradata\qsdb\redo03.log' SIZE 800M,

DATAFILE

'F:\app\xly\oradata\qsdb\system01.dbf',

'F:\app\xly\oradata\qsdb\system02.dbf',

'F:\app\xly\oradata\qsdb\undotbs01.dbf',

'F:\app\xly\oradata\qsdb\sysaux01.dbf',

'F:\app\xly\oradata\qsdb\users01.dbf',

'F:\app\xly\oradata\qsdb\hfsj_qs1.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs2.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs3.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs4.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs5.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs6.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs7.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs8.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs9.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs10.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs11.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs12.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs13.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs14.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs15.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs16.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs17.dbf',

'F:\app\xly\oradata\qsdb\ hfsj_qs18.dbf',

'F:\app\xly\oradata\qsdb\qsweihu.dbf'

'F:\app\xly\oradata\qsdb\goldengate.dbf'

'F:\app\xly\oradata\qsdb\hfqsquery.dbf'

'F:\app\xly\oradata\qsdb\hfqsmon.dbf '

CHARACTER SET US7ASCII;

7、在重构完毕控制文件后,重新打开数据库,会报错,提示SYSTEM01数据文件需要执行介质修复,如图所示:

a.修复数据文件,执行如下语句完成修复: 

  1. recover datafile  'F:\app\xly\oradata\qsdb\SYSTEM01.DBF'

b.在执行介质修复过程中若提示数据文件因为有坏块,无法进行介质恢复,可以执行如下语句,跳过坏块继续修复: 

  1. recover database ‘F:\app\xly\oradata\qsdb\system01.dbf’ allow 1 corruption; 

重复以上a,b步骤,将数据文件修复完毕,其中只有当出现a步骤中因为有坏块无法正常进行介质修复时,才采用b步骤中的跳过坏块修复,如图所示:

8、若无法忽略坏块进行修复,且恰好是sysaux数据文件出现错误,如图所示:

可选择使sysaux数据文件offline,即可打开数据库,执行如下语句:

  1. alter database datafile ‘F:\app\xly\oradata\SYSAUX01.DBF’ offline; 

9、完成如上操作,即可正常启动数据,如图所示:

10、使用Navicat软件链接并打开Oracle,即可访问Oracle记录,根据公安局要求需要指定代理商及其会员的所有刷卡套现的记录,分析Oracle数据库表结构后,编写SQL语句查询某代理商的数据如下:

注意事项

在采用上述方法对Oracle数据库数据进行提取时要注意以下几点:

1、上述方法能确保Oracle数据库的数据完整性,并且不会对原始数据产生破坏,但是该方法较为复杂,需要专业的技术人员辅助完成;

2、确保从服务器中获取到的数据库的完整性,不然会导致附加失败;

3、确保搭建环境附加数据库的电脑具有足够的空间,不然会因为空间不足导致附加失败;

4、确保搭建环境中Oracle数据库版本与服务器中的Oracle数据库版本完全一致; 

5、以上操作涉及到很多专业技能,如有必要可找寻专业的公司或技术人员协助完成。 

责任编辑:庞桂玉 来源: 效率源科技
相关推荐

2010-10-26 11:04:48

oracle数据导入

2011-08-02 13:37:17

2010-04-12 10:40:49

Oracle数据库

2011-05-17 15:02:15

ORACLE数据库备份

2010-10-28 14:18:01

oracle数据库版本

2010-05-06 09:30:16

Oracle创建数据库

2010-10-27 14:15:44

Oracle数据库效率

2011-04-13 14:07:17

OracleSybase数据库

2010-10-27 17:11:35

oracle查询

2009-04-03 10:54:49

Oracle备份恢复

2011-05-18 09:39:19

Oracle数据库性能优化

2011-04-12 10:09:33

Oracle数据库关闭

2022-11-04 08:34:27

Oracle数据库

2011-02-28 13:31:17

Oracle数据库

2010-10-26 15:54:02

连接oracle数据库

2011-07-27 08:56:32

Oracle数据库绑定变量软解析

2010-04-12 14:19:00

Oracle数据库备份

2010-04-19 15:41:58

2010-04-13 10:15:17

Oracle数据库

2010-04-09 14:37:08

Oracle数据库
点赞
收藏

51CTO技术栈公众号