dataguard 自动裂缝检测和解决
来源:互联网 发布:左连接查询sql语句 编辑:程序博客网 时间:2024/04/28 23:31
当Primary Database的某些日志没有成功发送到Standby Database, 这时候发生饿了归档裂缝(Archive Gap)。
缺失的这些日志就是裂缝(Gap)。 Data Guard能够自动检测,解决归档裂缝,不需要DBA的介入。这需要配置FAL_CLIENT, FAL_SERVER 这两个参数(FAL: Fetch Archive Log)。
从FAL 这个名字可以看出,这个过程是Standby Database主动发起的“取”日志的过程,Standby Database 就是FAL_CLIENT. 它是从FAL_SERVER中取这些Gap, 10g中,这个FAL_SERVER可以是Primary Database, 也可以是其他的Standby Database。
如:FAL_SERVER='PR1,ST1,ST2';
FAL_CLIENT和FAL_SERVER两个参数都是Oracle Net Name。 FAL_CLIENT 通过网络向FAL_SERVER发送请求,FAL_SERVER通过网络向FAL_CLIENT发送缺失的日志。 但是这两个连接不一定是一个连接。 因此FAL_CLIENT向FAL_SERVER发送请求时,会携带FAL_CLIENT参数值,用来告诉FAL_SERVER应该向哪里发送缺少的日志。 这个参数值也是一个Oracle Net Name,这个Name是在FAL_SERVER上定义的,用来指向FAL_CLIENT.
当然,除了自动地日志缺失解决,DBA 也可以手工解决。 具体操作步骤如下:
1) 查看是否有日志GAP:
SQL> SELECT UNIQUE THREAD#, MAX(SEQUENCE#) OVER(PARTITION BY THREAD#) LAST FROM V$ARCHIVED_LOG;
如果 Redo在物理Standby数据库缺失,在物理Standby数据库执行以下查询语句确定缺失问题
如果缺失 7 to 10
SQL>select name from v$archived_log where thread# = 1 and dest_id = 1 and sequence# >=7 and sequence# <= 10 ;
SQL> SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
2) 如果有,则拷贝过来
3) 手工的注册这些日志:
SQL> ALTER DATABASE REGISTER LOGFILE '路径';
- dataguard 自动裂缝检测和解决
- opencv进行简单的裂缝检测
- 基于半交互式的裂缝检测方法
- Physical dataguard 如何自动解决archive log gap
- Dataguard的Log Gap检测和处理原理
- Dataguard的Log Gap检测和处理原理
- Halcon实例教程之金属表面划痕及裂缝检测
- 基于先验知识修复图像裂缝和毛刺
- Dataguard 归档不能自动传输
- [Android] 程序版本检测和自动安装
- CRichEditCtrl自动响应和检测URL
- Spring 依赖检测和自动装配
- Spring 注解自动装载和检测
- 地形渲染--消除裂缝(Cracks) 跳点法和加点法和 “裙子”(Skirts )
- java截取字符串,截串,substring和split,分别字母和数字,正则裂缝
- dataguard数据库坏块自动修复
- DataGuard
- dataguard
- Leetcode 102. Binary Tree Level Order Traversal
- AsyncTask源码分析之Java篇
- CheckBox 自定义
- 梯度下降的矩阵分解公式推导
- Android Activity生命周期与启动模式
- dataguard 自动裂缝检测和解决
- TabLayout的使用
- Bzoj3697:采药人的路径:树的点分治
- 【理解JVM】深入浅出JVM垃圾收集(HotSpot)
- java继承
- ArrayList vs. LinkedList vs. Vector
- 华为的JAVA面试题
- ArrayList和vector,Hashtable和HashMap的区别
- MyEclipse和tomcat如何配置让修改了Java代码后不用重启服务器 - jingyunyb