Chinaunix首页 | 论坛 | 博客
  • 博客访问: 773374
  • 博文数量: 185
  • 博客积分: 7434
  • 博客等级: 少将
  • 技术积分: 2325
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-29 14:01
文章分类

全部博文(185)

文章存档

2013年(1)

2012年(2)

2011年(17)

2010年(25)

2009年(36)

2008年(104)

分类: Oracle

2008-03-14 16:07:41

从9i以后,一般都不需要手工处理确实的日志,FAL自动会帮我们处理这些问题。
但是,并非我们就完全不用手工处理了,比如,你的磁盘空间爆满,归档日志在传到备库前被转移到其他地方,这种情况下FAL是不能解决问题的,需要手工处理一下。

下面就简单说说手工处理日志GAP的步骤:
1、在备库检查是否有日志缺失
SQL> select * from V$ARCHIVE_GAP;
2、在主库中查询缺失的日志的所在路径和名称
SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND SEQUENCE# BETWEEN x AND y;
3.把这些archivelog copy到备库所在机器上
4、在备库上手工注册上一步中从主库拷贝来的日志
如:
SQL> ALTER DATABASE REGISTER LOGFILE /archivelog/test_2019.arc';
Database altered.
(有多个archivelog,就重复执行上面的命令)
 
5、观察备库的alert日志信息
从以上信息,可以看出之前注册的日志已经被正常应用。
6、检查备库是否还有日志GAP
SQL> select * from V$ARCHIVE_GAP;
no rows selected

 

如果日志只是临时移动到其他地方,过后会再移回原路径,则不用这么大费周折手工去手工处理了,把日志拷回原处后FAL会自动处理GAP。



阅读(812) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~