讲授Oracle数据库之中数据安全完好解析[Oracle防范]
本文“讲授Oracle数据库之中数据安全完好解析[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
随着计算机的遍及以及网络的发展,数据库已经不再仅仅是那些程序员所专有的话题.而Oracle数据库更是凭仗其性能出色,操作便利机动的特点,在数据库的市场中已经占据了一席之地.但是一样随着网络技术的不断进步,数据信息的不断增添,数据安全已经不再是从前的“老生长谈”,也更不是从前书本上那些“可望不可及”的条条框框.
大概好久从前,大家都认为Oracle数据库的安全并不存在隐患,因为 Oracle公司在去年11月份开始促销其数据库软件时提出的口号是“只有Oracle9i可以做到绝对安全”.但是不管它这么说是为了促销,还是为了扩大出名度,总之伴去年12月份,英国的安全专家DavidLitchfield发现的9iAS中存在的程序错误招致的缓冲溢出漏洞以及后来, PenTestLimited和eEyeDigitalSecurity各自提出了一个小的漏洞,全部利用Oracle公司产品的人都不由地慌张了本来松懈的大脑--这个关于用户来说,毕竟关系到了自己的“身家性命”.
下面笔者将带着大家走进Oracle数据安全的世界.由于笔者水平有限,所以不足之处在所不免,望大家不吝赐教.
(一)Oracle数据库的一些基本常识
这里仅仅是为了今后的安全奠基一些底子,因为我们背面要用到它们.
1.Oracle所包含的组件:
在Oracle,数据库是指整个OracleRDBMS环境,它包含以下组件:
·Oracle数据库进程和缓冲(实例).
·SYSTEM表空间包含一个集合系统类目,它可以由一个或多个数据文件构成.
·别的由数据库管理员(DBA)(可选)定义的表空间,每个都由一个或多个数据文件构成.
·两个以上的联机恢复日记.
·归档恢复日记(可选).
·别的文件(掌握文件、Init.ora、Config.ora等).
每个Oracle数据库都在一此中央系统类目和数据字典上运行,它位于SYSTEM表空间.
2.关于“日记”:
Oracle数据库利用几种构造来保护数据:数据库后备、日记、回滚段和掌握文件.下面我们将大体上理解一下作为主要构造之一的“日记”:
每一个Oracle数据库实例都供应日记,记录数据库中所作的全部改正.每一个运行的Oracle数据库实例呼应地有一个在线日记,它与Oracle后台进程LGWR一同工作,当即记录该实例所作的全部改正.归档(离线)日记是可挑选的,一个Oracle数据库实例一旦在线日记填满后,可形成在线日记归档文件.归档的在线日记文件被唯一标识并归并成归档日记.
·关于在线日记:一个Oracle数据库的每一实例有一个相关联的在线日记.一个在线日记由多个在线日记文件构成.在线日记文件(onlineredologfile)填入日记项(redoentry),日记项记录的数据用于重构对数据库所作的全部改正.
·关于归档日记:Oracle要将填满的在线日记文件组归档时,则要成立归档日记(archivedredolog).其对数据库备份和恢复有下列用处:
<1>数据库后备以及在线和归档日记文件,在操作系统和磁盘弊端中可保证全部提交的事物可被恢复.
<2>在数据库翻开和正常系统利用下,假如归档日记是永久保存,在线后备可以举行和利用.
数据库可运行在两种差别方法下:NOARCHIVELOG方法或ARCHIVELOG方法.数据库在NOARCHIVELOG方法下利用时,不能举行在线日记的归档.假如数据库在ARCHIVELOG方法下运行,可实施在线日记的归档.
3.物理和逻辑存储构造:
OracleRDBMS 是由表空间构成的,而表空间又是由数据文件构成的.表空间数据文件被格局化为内部的块单位.块的大小,是由DBA在Oracle第一次成立的时刻设置的,可以在512到8192个字节的范围内变更.当一个对象在 Oracle表空间中成立的时刻,用户用叫做长度的单位(初始长度((initialextent)、下一个长度(nextextent)、最小长度(minextents)、以及最大长度(maxextents))来标明该对象的空间大小.一个Oracle长度的大小可以改变,但是要包含一个由至少五个持续的块构成的链.
(二)Oracle数据安全的保护
记得某位哲学家说过:“事物的改变离不开内因和外因.”那么关于Oracle数据安全这个话题而言,也必将分为“内”和“外”两个部份.那么好,我们就先从“内”开始说起:
1.从Oracle系统本身说起:
我们先抛开令人闻风色变的“hacker”和其他一些外部的缘由,先想一下我们的数据库.什么硬盘破坏,什么软件受损,什么操作事物……一系列由于我们的 “忽视”而造成的系统问题就完好可以让我们辛劳成立的数据库中的数据一去不复返.那么,我们就先从自己身上找找缘由吧.
【一】办理系统本身问题的办法--数据库的备份及恢复:
·数据库的备份:
关于Oracle数据库的备份,尺度地有三中办法:导出/导入(Export/Import)、冷备份、热备份.导出备份是一种逻辑备份,冷备份和热备份是物理备份.
<1>导出/导入(Export/Import)
操纵Export可将数据从数据库中提取出来,操纵Import则可将提取出来的数据送回Oracle数据库中去.
a.简单导出数据(Export)和导入数据(Import)
Oracle支持三种范例的输出:
(1)表方法(T方法),将指定表的数据导出.
(2)用户方法(U方法),将指定用户的全部对象及数据导出.
(3)全库方法(Full方法),将数据库中的全部对象导出.
数据导出(Import)的历程是数据导入(Export)的逆历程,它们的数据流向差别.
b.增量导出/导入:
增量导出是一种常用的数据备份办法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出.在举行此种导出时,系统不要求答复任何问题.导出文件名缺省为export.dmp,假如不但愿自己的输出文件命名为export.dmp,必须在号令行中指出要用的文件名.
增量导出包含三个范例:
(1)“完好”增量导出(Complete)
即备份整个数据库,比方:$expsystem/managerinctype=completefile=990702.dmp.
(2)“增量型”增量导出
备份上一次备份后改变的数据.比方:$expsystem/managerinctype=incrementalfile=990702.dmp.
(3)“累计型”增量导出(Cumulative)
累计型导出方法只是导出自上次“完好”导出之后数据库中改变了的信息.比方:$expsystem/managerinctype=cumulativefile=990702.dmp.
数据库管理员可以排定一个备份日程表,用数据导出的三个差别方法公道高效地完成.比方数据库的备份任务可作以下安置:
·星期一:完好导出(A)
·星期二:增量导出(B)
·星期三:增量导出(C)
·星期四:增量导出(D)
·星期五:累计导出(E)
·星期六:增量导出(F)
·星期日:增量导出(G)
以上是“讲授Oracle数据库之中数据安全完好解析[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |