ORACLE数据库ARCHIVELOG,NOARCHIVELOG模式转换简单总结,Redo Log(重做日志)Archive Log(归档日志)

Oracle9i中有2种日志,一种称为 Redo Log(重做日志),另一种叫做Archive Log(归档日志)

重做日志redo log file是LGWR进程从Oracle实例中的redo log buffer写入的,是循环利用的。就是说一个redo log file(group) 写满后,才写下一个。

归档日志archive log是当数据库运行在归档模式下时,一个redo log file(group)写满后,由ARCn进程将重做日志的内容备份到归档日志文件下,然后这个redo log file(group)才能被下一次使用。

不管数据库是否是归档模式,重做日志是肯定要写的。而只有数据库在归档模式下,重做日志才会备份,形成归档日志。

归档日志结合全备份,用于数据库出现问题后的恢复使用。

redolog也称为联机日志
archivelog 为归档日志,是把redolog归档而来。先有redolog再有archivelog
oracle恢复时需要redolog和archivelog

日志文件分为重做日志文件(redo log file)和归档日志文件(archive log file)。

SQL> select group#, status, member from v$logfile;

GROUP# STATUS MEMBER
---------- ------- --------------------------------------------------------------------------------
3 C:\ORACLE\ORADATA\ORCL\REDO03.LOG
2 C:\ORACLE\ORADATA\ORCL\REDO02.LOG
1 C:\ORACLE\ORADATA\ORCL\REDO01.LOG

redo log fiel有多个组group构成。一个group中能包括不止一个log file,日志信息是写到group的每个logfile中,所以一个group中的log file存储着一样的信息。当一个group写满之后就转到下一个group中,称之为日志切换。

当所有group都写满了后,就重头开始从第一个group开始,原来的内容将被覆盖丢失。如果不想被丢失,可以采用归档模式,即将数据保存到archive log file中。归档模式会给系统带来一定的性能问题。

查看database采用哪种模式:
SQL> select dbid,name,log_mode from v$database;

DBID NAME LOG_MODE
---------- --------- ------------
1232416663 ORCL NOARCHIVELOG

归档日志路径由SPFILE的log_archive_dest参数确定。

SQL> show parameter log_archive_dest;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest string 
log_archive_dest_1 string 
log_archive_dest_10 string 
log_archive_dest_2 string 
log_archive_dest_3 string 
log_archive_dest_4 string 
log_archive_dest_5 string 
log_archive_dest_6 string 
log_archive_dest_7 string 
log_archive_dest_8 string 
log_archive_dest_9 string 
log_archive_dest_state_1 string enable
log_archive_dest_state_10 string enable
log_archive_dest_state_2 string enable
log_archive_dest_state_3 string enable
log_archive_dest_state_4 string enable
log_archive_dest_state_5 string enable
log_archive_dest_state_6 string enable
log_archive_dest_state_7 string enable
log_archive_dest_state_8 string enable
log_archive_dest_state_9 string enable

警告日志文件alert_sid.log保存着例行的信息和错误信息,它的路经是:

SQL> select value from v$parameter where name='background_dump_dest';

VALUE
--------------------------------------------------------------------------------
c:\oracle\diag\rdbms\orcl\orcl\trace

SQL> show parameter background_dump_dest;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string c:\oracle\diag\rdbms\orcl\orcl\trace


用户跟踪文件是oracle出现异常时自动创建的文本文件,它与警告文件一起构成了完整的故障信息描述体系。

SQL> select value from v$parameter where name='user_dump_dest';

VALUE
--------------------------------------------------------------------------------
c:\oracle\diag\rdbms\orcl\orcl\trace

SQL> show parameter user_dump_dest;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
user_dump_dest string c:\oracle\diag\rdbms\orcl\orcl\trace

出处:http://zhidao.baidu.com/question/359244586.html

==============================================================================================

ORACLE数据库ARCHIVELOG,NOARCHIVELOG模式转换简单总结

首先,什么是archivelog,noarchivelog模式。简单点说就是redolog是否归档。noarchivelog是指的不归 
档redolog并不是没有redolog。 
archivelog,noarchivelog模式之间切换有几点要注意的地方。 
1:是不是归档redolog有一个重要的开关 
alter database archivelog; 
alter database noarchivelog; 
这个打开archivelog状态的语句必须在mount状态运行。 
shutdown immediate 
startup mount 
alter database archivelog 
alter database open 
2:打开开关之后并不是就可以让系统自动归档,还有一个控制点,自动还是手动归档。 
archive log start  自动 
archive log stop   手动 
这个操作会改变 
log_archive_start = true 
这个参数控制 数据库 实例启动时是否启动归档过程通常为ora_arc0_sid,这个参数可以通过archive log  
start,或archive log stop 打开或关闭。 
3:如果手动归档那么 
alter system switch logfile后系统并不自动把switch之前的log归档而是要手工归档。 
alter system archive log all 
  
4:手工归档下要注意的问题 
如果系统在几次日志组切换后,日志还没有归档,所有的online redo log group都在未归档状态,那么 
切换日志组的过程会挂住。这时要打开一个另一个窗口手工归档。看系统的log的常用语句 
select * from v$log 
select * from v$logfile
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值