- 浏览: 919345 次
- 性别:
- 来自: 黑龙江
文章分类
- 全部博客 (209)
- struts1 (3)
- hibernate3 (19)
- java (13)
- spring2 (5)
- netBeans (1)
- eclipse (1)
- JSF (1)
- DIV+CSS篇章 (1)
- jFreeChart+Oracle之曲线,柱状及饼状图的实现 (1)
- JSF知识与技巧 (3)
- Oracle数据类型的介绍与比较 (2)
- J2EE (2)
- Ajax技术 (4)
- javaScript技术 (25)
- struts2 (16)
- C/C++程序设计 (1)
- oracle系统学习 (29)
- 算法分析 (0)
- Linux实践 (7)
- extjs开发经验 (13)
- flex开发总结 (1)
- FusionCharts总结 (0)
- 高级数据库总结 (0)
- SVG拓扑图开发总结 (0)
- CSS (1)
- CSS使用简介 (1)
- SVG (0)
- DOJO (0)
- Junit测试 (0)
- lucene (24)
- solr (6)
- tokyo tyrant 技术 (7)
- Html5 (1)
- 算法与数据结构 (0)
- 物联网相关技术学习 (0)
- UI设计 (1)
- webservice (0)
- Android (5)
- hibernate4 (3)
- solrcloud (0)
- dorado5 (0)
- dorado7 (0)
- elasticsearch (0)
- GWT (0)
- node.js (0)
- 并发编程 (1)
- 大数据 (1)
- 项目经验 (5)
最新评论
-
cs261244787:
楼主好人! 平安
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
xinsiyou:
牛逼,就是样式被搞没了
JS实现选项右移,左移,向上,向下调整顺序 -
unnamed__:
这代码风格就像一坨翔
java获取数据库的列名,类型等信息
========================物理standby的failover=========================
注意几点:
1)failover之后,原primary数据库默认不再是data guard配置的一部分。
2)多数情况下,其它逻辑/物理standby数据库不直接参与failover的过程,因此这些数据库不需要做任何操作。
3)某些情况下,新的primary数据库配置之后,需要重新创建其它所有的standby数据库。
另外,如果待转换角色的standby处于maximum protection或maximum availability模式的话,归档日志应该是连续存在的,这种情况下你可以直接从第3步执行,否则建议你按照操作步骤从第1步开始执行。
一般情况下failover都是表示primary数据库瘫痪,最起码也是起不来了,因此这种类型的切换基本上不需要primary数据库做什么操作。所以下列步骤中如果有提到primary和standby执行的,只是建议你如果primary还可以用
,那就执行一下,即使它能用你却不执行,也没关系,不影响standby数据库的切换:)
1、检查归档文件是否连续
查询待转换standby数据库的V$ARCHIVE_GAP视图,确认归档文件是否连接:
SQL> SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
说明:如果返回的有记录,按照列出的记录号复制对应的归档文件到待转换的standby服务器。这一步非常重要,必须确保所有已生成的归档文件均已存在于standby服务器,不然可能会数据不一致造成转换时报错。
文件复制之后,通过下列命令将其加入数据字典:
SQL> ALTER DATABASE REGISTER PHYSICAL LOGFILE 'filespec1';
2、检查归档文件是否完整
分别在primary/standby执行下列语句:
SQL> select distinct thread#,max(sequence#) over(partition by thread#) a from v$archived_log;
说明:该语句取得当前数据库各线程已归档文件最大序号,如果primary与standby最大序号不相同,必须将多出的序号对应的归档文件复制到待转换的standby服务器。不过既然是failover,有可能primary数据库此时已经无法打开,甚至无法访问,那你只好听天由命喽,三思在这里替你默念:苍天啊,大地啊,哪路的神仙大姐能来保佑俺们不丢数据呀!
3、启动failover
执行下列语句:
SQL> alter database recover managed standby database finish force;
说明:FORCE关键字将会停止当前活动的RFS进程,以便立刻执行failover。
剩下的步骤就与前面switchover很相似了
4、切换物理standby角色为primary
SQL> alter database commit to switchover to primary;
5、启动新的primary数据库
如果当前数据库已mount,直接open即可,如果处于read-only模式,需要首先shutdown immediate,然后再直接startup。
SQL> alter database open;
说明:角色转换工作完成。剩下的是补救措施(针对原primary数据库),由于此时primary数据库已经不再是data guard配置的一部分,我们需要做的就是尝试看看能否恢复原primary数据库,将其改造为新的standby服务器。具体操作方式可以分为二类:1.重建 2.备份恢复。所涉及的技术前面的系列文章中均有涉及,此处不再赘述。
注意几点:
1)failover之后,原primary数据库默认不再是data guard配置的一部分。
2)多数情况下,其它逻辑/物理standby数据库不直接参与failover的过程,因此这些数据库不需要做任何操作。
3)某些情况下,新的primary数据库配置之后,需要重新创建其它所有的standby数据库。
另外,如果待转换角色的standby处于maximum protection或maximum availability模式的话,归档日志应该是连续存在的,这种情况下你可以直接从第3步执行,否则建议你按照操作步骤从第1步开始执行。
一般情况下failover都是表示primary数据库瘫痪,最起码也是起不来了,因此这种类型的切换基本上不需要primary数据库做什么操作。所以下列步骤中如果有提到primary和standby执行的,只是建议你如果primary还可以用
,那就执行一下,即使它能用你却不执行,也没关系,不影响standby数据库的切换:)
1、检查归档文件是否连续
查询待转换standby数据库的V$ARCHIVE_GAP视图,确认归档文件是否连接:
SQL> SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
说明:如果返回的有记录,按照列出的记录号复制对应的归档文件到待转换的standby服务器。这一步非常重要,必须确保所有已生成的归档文件均已存在于standby服务器,不然可能会数据不一致造成转换时报错。
文件复制之后,通过下列命令将其加入数据字典:
SQL> ALTER DATABASE REGISTER PHYSICAL LOGFILE 'filespec1';
2、检查归档文件是否完整
分别在primary/standby执行下列语句:
SQL> select distinct thread#,max(sequence#) over(partition by thread#) a from v$archived_log;
说明:该语句取得当前数据库各线程已归档文件最大序号,如果primary与standby最大序号不相同,必须将多出的序号对应的归档文件复制到待转换的standby服务器。不过既然是failover,有可能primary数据库此时已经无法打开,甚至无法访问,那你只好听天由命喽,三思在这里替你默念:苍天啊,大地啊,哪路的神仙大姐能来保佑俺们不丢数据呀!
3、启动failover
执行下列语句:
SQL> alter database recover managed standby database finish force;
说明:FORCE关键字将会停止当前活动的RFS进程,以便立刻执行failover。
剩下的步骤就与前面switchover很相似了
4、切换物理standby角色为primary
SQL> alter database commit to switchover to primary;
5、启动新的primary数据库
如果当前数据库已mount,直接open即可,如果处于read-only模式,需要首先shutdown immediate,然后再直接startup。
SQL> alter database open;
说明:角色转换工作完成。剩下的是补救措施(针对原primary数据库),由于此时primary数据库已经不再是data guard配置的一部分,我们需要做的就是尝试看看能否恢复原primary数据库,将其改造为新的standby服务器。具体操作方式可以分为二类:1.重建 2.备份恢复。所涉及的技术前面的系列文章中均有涉及,此处不再赘述。
发表评论
-
数据表更名语句
2010-04-21 11:08 1243当前数据表名为A,想要更名为B的语句如下: alter tab ... -
ORA-01078 & LRM-00109错误解决方法
2010-03-23 16:40 5541一同事今天刚装完oracle10g后,通过startup命令启 ... -
在线修改redo.log文件的大小
2009-09-02 17:24 59611.查看当前日志组成员: SQL> select mem ... -
怎么确保最终用户在数据库中只有一个会话
2009-08-11 18:47 1516sqlplus / as sysdba create user ... -
测试版-逻辑switchover
2009-07-16 12:41 12601.检查primary数据库是否配置了standby redo ... -
测试版-逻辑standby创建
2009-07-16 12:37 23111、创建物理standby 详见《测试版-物理standb ... -
测试版-物理switchover
2009-07-16 12:35 1089注意:standby数据库应该是alter database ... -
测试版-物理standby创建
2009-07-15 17:37 12941.编辑/etc/hosts文件 # vi /etc/ho ... -
dataguard日志传输方式简介
2009-06-26 12:44 53411、两种日志传输方式 Arch:传统的日志传送方式。现在只 ... -
物理standby的Switchover
2009-06-26 12:39 1276=======================物理st ... -
dataguard保护模式介绍
2009-06-26 12:38 33341、三种保护模式 1).最大性能(maximize per ... -
查看pga和sga值
2009-05-27 01:07 2551--显示正在使用的参数和文本参数值 1)select * fr ... -
设置sga和pga的值
2009-05-27 01:05 2563--设置sga的值 1)alter system set sg ... -
表的创建时间和表的大小空间
2009-05-27 01:04 1361--查看表的创建时间 select created,last_ ... -
设置parallel_automatic_tuning参数之后的错误的解决方法
2009-05-27 01:02 1772--设置并行度 1)alter system set para ... -
HA、RAC、Datagurad的区别
2009-05-10 20:20 2483标题为:HA、RAC、Datagurad的区别 一.HA简介 ... -
通过shell脚本后台创建表空间
2009-05-10 20:16 20891.用oracle用户登陆并创建shell文件: $ vi / ... -
occi库文件替换
2009-05-10 20:08 21021.从官方下载occi_gcc343_x86_64_10203 ... -
oracle10g查看表空间信息
2009-05-10 20:06 3007SELECT UPPER(F.TABLESPACE_NAME) ... -
oracle10g数据库自启动步骤
2009-05-10 20:05 1752oracle10g数据库自启动自启动设置步骤 一.Oracle ...
相关推荐
物理Standby数据库是Data Guard配置中的一种类型,它与主数据库的数据保持完全一致,可以用于故障切换(failover)操作,从而提供近乎实时的数据保护和恢复能力。以下是从给定的文件信息中提取并扩展的关键知识点,...
### ORACLE DATAGUARD 物理 Standby 配置详解 #### 一、环境准备与概述 在本文档中,我们将详细介绍如何配置 Oracle Dataguard 的物理 Standby 数据库。Oracle Dataguard 是一种全面的数据保护解决方案,旨在提供...
DataGuard 物理 Standby 管理_主备切换 DataGuard 物理 standby 管理_主备切换是 Oracle 数据库的一种高可用性解决方案,它可以提供数据库的实时备份和灾难恢复能力。DataGuard 的切换分为两种:switchover 和 ...
本手册主要针对相同SID的物理Standby数据库的搭建过程,下面将详细介绍这一主题。 1. **DataGuard基础概念** - **主数据库(Primary Database)**:运行在生产环境中的数据库,负责处理事务和更新。 - **物理...
物理dg的failover切换(六)”的文章中,作者通过具体的实验环境介绍和操作过程,详细阐述了Oracle数据库中Dataguard的物理备用数据库(physical standby database)发生故障时如何进行故障转移(failover)的相关...
灾难恢复及高可用性:物理standby 提供了一个健全而且极高效的灾难恢复及高可用性的解决方案。更加易于管理的switchover/failover 角色转换及最更短的计划内或计划外停机时间。 数据保护:应用物理standby 数据库,...
2. **定义Failover策略**:在Data Guard Broker环境中,可以使用`ALTER DATABASE SET STANDBY DATABASE TO PRIMARY;`命令定义备用数据库的角色。FSFO的配置涉及设置`FAST_START_FAIOVER`参数,以及定义故障阈值和...
根据数据复制方式的不同,可以将Standby数据库分为物理Standby、逻辑Standby以及Snapshot Standby。 本文主要介绍如何在一个已存在的Data Guard环境中新增一台逻辑Standby数据库,实现从物理Standby到逻辑Standby的...
Data Guard主从库之间的角色切换分为以下两种:1)SwitchoverSwithchover通常都是人为的有计划的进行角色互换,比如...下面分别演示物理Standby的Switchover和Failover(逻辑Standby的切换类似)。 1. 物理Standby执行S
- **转换物理 Standby 为逻辑 Standby**:通过特定命令将物理 Standby 转换为逻辑 Standby。 - **调整逻辑 Standby 初始化参数**:修改 Standby 数据库的初始化参数文件,以支持逻辑 Standby 的特殊需求。 - **...
这种方式能够加快 switchover 和 failover 的速度,因为切换前所有 standby redolog 都已被应用,无需再进行额外的归档处理。 - **延时应用归档日志** 在某些情况下,可能需要 standby 库延迟应用已经归档的日志...
### 执行 Failover 到物理备用数据库的步骤 #### 步骤 1:冲洗未发送的重做日志 1. **冲洗重做日志**:如果主数据库可以挂载,则可能从主数据库冲洗任何未发送的归档和当前重做到目标备用数据库。如果此操作成功,...
当主数据库发生故障,物理standby可以通过快速切换(Switchover)或故障转移(Failover)成为新的生产数据库。 三、Logical Standby Database 逻辑standby数据库在应用redo日志时,会将DML语句转换为等价的SQL语句...
- 之后,通过查询 `v$database` 获取备用数据库成为主库后的 SCN(系统改变号),并在旧主库(现备用库)上执行 Flashback Database 到该 SCN,然后将其转换回物理备用数据库。 3. **演练步骤**: - 确认主备角色...
1. 物理Standby数据库:物理standby是与主数据库结构完全相同的副本,它接收并应用主数据库的redo日志,保持与主数据库几乎实时的一致性。在主数据库发生故障时,物理standby可立即接管业务。 2. 逻辑Standby数据库...
2. **工作模式**:Data Guard支持多种工作模式,包括Physical Standby(物理备用)、Logical Standby(逻辑备用)和Snapshot Standby(快照备用)。物理备用数据库与主数据库结构完全相同,而逻辑备用则允许在备用...
主要角色包括Primary Database(主数据库)和Standby Database(备用数据库),可能还包括一个或多个Physical Standby(物理备用)或Logical Standby(逻辑备用)数据库。 在Oracle 10g中,配置Data Guard的步骤...
搭建Active Data Guard时,主数据库需开启FORCELOGGING以确保所有更改都被记录,增加standby日志文件,使主数据库处于归档模式,以便能够将重做日志传送给备用数据库。同时,配置备用数据库的初始化参数、创建必要的...
2. **停止重做应用**:使用`ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;`命令停止目标备用数据库上的重做应用。这会确保当前正在处理的所有重做数据都已应用完毕。 3. **完成重做数据应用**:再次...