欢迎来到天天文库
浏览记录
ID:42819138
大小:224.50 KB
页数:8页
时间:2019-09-21
《oracle日志归档模式改变》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、oracle日志归档模式改变2011-12-2913:30:37
2、 分类:oracle
3、 标签:
4、字号大中小 订阅在Oracle数据库中,主要有两种日志操作模式:归档模式(archivelogmode)及非归档模式(noarchivelogmode)。在默认情况下oracle数据库采用的是非归档模式。作为一个合格的DBA,应当深入了解这两种日志操作模式的特点,并且保证数据库运行在合适的日志操作模式下。在讲重做日志归档模式(archivelogmode)及非归档模式(noarchivelogmode)之前我们先简单的了解一下oracle的日志切
5、换步骤。oracle数据库的重做日志是重复写的,一般来说oracle数据库拥有多个重做日志组(redologgroup),每个重做日志组又包含多个成员(详细介绍请查考oracle官方文档),我们大部分的数据更改操作都会写入在线日志中,也就是当前正在使用的重做日志。当一个重做日志写满或DBA发出switchlog命令的时候就会发生日志切换,如果oracle运行在非归档模式下,oracle直接覆盖写下一个重做日志组。如果oracle运行在归档模式下则oracle会查询即将写入的重做日志是否归档,没有归档则等待其归档,等归档完成以后再覆盖写入重做日志记
6、录。当然如果发生了归档等待的话可以通过添加重做日志组或开启更多的归档进程来避免这个等待事件。总的来说重做日志归档模式(archivelogmode)及非归档模式(noarchivemode)的最重要的区别就是当前的重做日志切换以后会不会被归档进程(archiveprocess)copy到归档目的地(log_archive_dest)。 一.非归档模式(noarchivelogmode)的利与弊 当oracle数据库运行在非归档模式下,控制文件确定了发生日志切换以后重做日志文件不需要归档,同时对于(日志写进程)LGWR来
7、说此重做日志组是可以直接使用的。非归档模式(noarchivelogmode)只能提供实例级别的故障恢复,需要介质恢复的时候oracle就爱莫能助了。如果很不幸的发生了,那么我们只能把数据库恢复到过去的某个时间点上,前提是你完全冷备份了数据库。从备份时间点到故障发生期间的所有数据都只有丢失了。而且当oracle运行在非归档模式(noarchivelogmode)下的时候数据库不提供在线的表空间备份,换句话说热备是不可用的。 二.归档模式(archivelogmode)的利与弊 当oracle数据库运行在归档模式下,控制文
8、件确定了发生日志切换后的重做日志文件在归档前是不能被日志写进程)LGWR重用的。归档模式(archivelogmode)下oracle数据库能从实例,介质的失败中得到恢复,当然最近一次的数据库全备及备份以来的所有归档日志的备份时必须的。同时我们还能利用归档日志的重放来完成oraclestandby的搭建(oraclestandby以后会介绍,请大家留意)。归档模式(archivelogmode)又可以分为手动归档和自动归档,顾名思义手动归档需要DBA的干预;而自动归档,oracle会自己完成归档任务。 通过上面的简单描述我们应该对两种模式
9、的利与弊有所了解了,但是具体选择哪种模式则需要我们从实际情况出发综合考虑。不过作为生产环境一般都是选用归档模式(archivelogmode)。接下来将要介绍一下当前模式的查询以及模式的切换。 三.当前模式查询 可以通过以下方式查询当前数据库是运行在哪种模式下的: [oracle@localhost~]$sqlplus"/assysdba"
10、 SQL>archiveloglist Databaselogmode ArchiveMode Automaticarchival Enabled Archivedestination /u01/oradata/archive_sid Oldestonlinelogsequence 9975 Nextlogsequencetoarchive 9977 Cur
11、rentlogsequence 9977 SQL>selectname,log_modefromv$
此文档下载收益归作者所有