热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

物理备数据库的切换与故障转移-mysql教程

欢迎进入Oracle社区论坛,与200万技术人员互动交流进入一、物理备数据库的切换切换必须在当前主数据库上发起,并且在目标备数据库上完成。下面的步骤描述如何执行切换。第1步检验是否可能执行切换。在当前主数据库上,在主数据库上查询V$DATABASE

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 一、物理备数据库的切换 切换必须在当前主数据库上发起,并且在目标备数据库上完成。下面的步骤描述如何执行切换。 第 1 步检验是否可能执行切换。 在当前主数据库上,在主数据库上查询 V$DATABASE

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  一、物理备数据库的切换

  切换必须在当前主数据库上发起,并且在目标备数据库上完成。下面的步骤描述如何执行切换。

  第 1 步检验是否可能执行切换。

  在当前主数据库上,在主数据库上查询 V$DATABASE 固定视图的SWITCHOVER_STATUS 列,以检验是否可能执行切换。例如:

  SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

  SWITCHOVER_STATUS

  -----------------

  TO STANDBY

  1 row selected

  在 SWITCHOVER_STATUS 列中的TO STANDBY 值指出可能切换主数据库到备角色。如果TO STANDBY 值没有显示,则检查Data Guard 配置是否正确起作用(例如,检查所有的LOG_ARCHIVE_DEST_n 参数值被正确指定)。如果在 SWITCHOVER_STATUS 列中的值是SESSIONS ACTIVE,你需要终止可能阻碍切换处理的活动用户或SQL会话。如果,在执行这些步骤之后,SWITCHOVER_STATUS 列还是显示SESSION ACTIVE,你能通过添加WITH SESSION SHUTDOWN 子句到步骤2 中描述的ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY 语句来成功执行切换。

  第 2 步在主数据库上发起切换。

  要更改当前主数据库到物理备数据库角色,在主数据库上使用下面 SQL 语句:

  SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;

  在这个语句完成后,主数据库转换到备数据库。当前控制文件在切换前备份到当前SQL会话跟踪文件。这使得有可能重构当前控制文件,如果必要的话。

  第 3 步关闭并重启前主实例。

  关闭前主实例,并重启和安装数据库:

  SQL> SHUTDOWN IMMEDIATE;

  SQL> STARTUP MOUNT;

  注意:在切换过程的这个点,两个数据库都配置为备数据库。

  第 4 步检验 V$DATABASE 视图中的切换状态。

  在你更改主数据库到物理备角色,以及配置中的备数据库接收到切换通知之后,你应该检验目标备数据库是否处理切换通知,通过查询目标备数据库上的V$DATABASE 固定视

  图的SWITCHOVER_STATUS 列。

  例如:

  SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

  SWITCHOVER_STATUS

  -----------------

  TO_PRIMARY

  1 row selected

  如果 SWITCHOVER_STATUS 列中的值是SESSION ACTIVE,你需要确定并终止可能阻碍切换处理的活动用户或SQL 会话。

  如果,在执行这些步骤之后,SWITCHOVER_STATUS 列还是显示SESSION ACTIVE,你能处理到步骤5,并过添加WITH SESSION SHUTDOWN 子句到切换语句。

  第 5 步切换目标物理备数据库角色到主角色。

  当备数据库实例安装在重做应用模式或对只读访问打开时,你能将物理备数据库从备角色切换到主角色。必须是这些模式之一,主数据库的切换请求才能被调度。在备数据库处于适当的模式,在你希望更改主角色的物理备数据库上,执行下面的SQL 语句:

  SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;

  第 6 步完成备数据库到主角色的转换。

  你执行的任务依赖于物理备数据库是否曾经以只读模式打开过:

  l 如果物理备数据库自从上次启动过后没有以只读模式打开过,执行SQL ALTER DATABASE OPEN 语句来打开新的主数据库:

  SQL> ALTER DATABASE OPEN;

  l 如果物理备数据库自从上次启动过后曾经以只读模式打开,你必须关闭目标备数据库并重启:

  SQL> SHUTDOWN IMMEDIATE;

  SQL> STARTUP;

  注:

  不需要关闭并重启在切换的时候联机的其它备数据库(不包括在切换中的)。这些备数据库在切换完成后将继续正常起作用。

  第 7 步如果必要,在备数据库上重启日志应用服务。

  对于新的物理备数据库和 Data Guard 配置中的每个其它物理或逻辑备数据库,如果日

  志应用服务没有预先配置在切换过程中持续打开,使用合适的命令来重启日志应用服务。

  第 8 步开始发送重做数据到备数据库。

  在新的主数据库上执行下面语句:

  SQL> ALTER SYSTEM SWITCH LOGFILE;

  二、物理备数据库的故障转移

  本小节描述如何执行包含物理备数据库的故障转移。

  在包含物理备数据库的故障转移过程中:

  l 在所有情况中,在故障转移后,原主数据库不能再参与在 Data Guard 配置中。

  l 在大多数情况中,其它逻辑或物理备数据库不直接参与配置中剩余的故障转移,并不必须关闭或重启。

  l 在一些情况中,可能有必要在配置新的主数据库之后重建所有备数据库。

  这些情况在下面的故障转移步骤中的适当位置描述。

  注:

  Oracle 推荐你只使用在下面小节中描述的故障转移步骤和命令来执行故障转移。不要使用ALTER DATABASE ACTIVATE STANDBY DATABASE 来执行故障转移,因为这条语句可能导致数据丢失。

[1] [2]


推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 构建基于BERT的中文NL2SQL模型:一个简明的基准
    本文探讨了将自然语言转换为SQL语句(NL2SQL)的任务,这是人工智能领域中一项非常实用的研究方向。文章介绍了笔者在公司举办的首届中文NL2SQL挑战赛中的实践,该比赛提供了金融和通用领域的表格数据,并标注了对应的自然语言与SQL语句对,旨在训练准确的NL2SQL模型。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 本文详细介绍了如何使用ActionScript 3.0 (AS3) 连接并操作MySQL数据库。通过具体的代码示例和步骤说明,帮助开发者理解并实现这一过程。 ... [详细]
  • 在即将迎来26岁生日之际,作者的人生陷入了低谷。经过近三年的硕士学习后,最终决定退学,并且面临没有工作经验的困境。尽管如此,作者依然坚定地选择为自己的人生负责。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 本文详细介绍了美国最具影响力的十大财团,包括洛克菲勒、摩根、花旗银行等。这些财团在历史发展过程中逐渐形成,并对美国的经济、政治和社会产生深远影响。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 本题通过将每个矩形视为一个节点,根据其相对位置构建拓扑图,并利用深度优先搜索(DFS)或状态压缩动态规划(DP)求解最小涂色次数。本文详细解析了该问题的建模思路与算法实现。 ... [详细]
author-avatar
小思绪
创造人生的可能
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有