搜索
首页数据库mysql教程演练不同模式下镜像数据库SQL Server的异常处理

镜像数据库是SQL Server高可用性方案的一种。配置比较简单,但是有多种模式。如果镜像数据库出现异常,在不同模式下的表现形式也是各异的。这里,我们演练在不同模式下,服务器出现异常后,可能的效果,这样能帮助我们选择合适的模式,以及了解在对数据库镜

镜像是SQL Server高可用性方案的一种。配置比较简单,但是有多种模式。如果镜像出现异常,在不同模式下的表现形式也是各异的。这里,我们演练在不同模式下,出现异常后,可能的效果,这样能帮助我们选择合适的模式,以及了解在对数据库镜像做维护期间,需要注意的地方。

【数据库镜像的模式】

数据库镜像主要有这么几种模式:

· High Performance模式 (也就是异步模式)

数据库在Principle的事务,不需要得到Mirror的确认,可以直接完成。Principle数据库性能会比较好。但是Mirror跟Principle之间事务传递可能延迟。

· High Safety 模式 (也就是同步模式)没有 witness服务器

数据库在Principle的事务,需要马上得到mirror的确认,才能完成。这种情况下,Mirror和Principle的数据是同步的。但是因为所有的事务需要mirror的确认,所以性能可能会有所影响。

· High Satefy模式 (也就是同步模式)有 witness服务器

如果带有witness,那么一旦Principle数据库有异常,无法连通,则在witness服务器的见证下,会做自动切换。镜像数据库会变成主数据库,以继续提供服务。

【High Performance模式下,出现异常】

演练不同模式下镜像数据库SQL Server的异常处理

· MIRROR数据库有问题,这时候PRINCIPLE数据库会处于 (Principle, Disconnected) 状态。在这种情况下,Principle数据库依旧能正常服务。当Mirror数据库恢复正常后,数据会自动进行同步,同步后,PRINCIPLE服务器会恢复到 (Principle, Synchronized) 正常状态。这种情况虽然不会对服务造成问题,但是我们应该尽快恢复Mirror数据库,否则,在Principle端,日志会累积,变得越来越大。会占满磁盘空间。

· Principle数据库有问题,无法连接,这时候应用当然不能使用。Mirror数据库处于 (Mirror, Disconnected/In Recovery) 状态。这时候我们有两种选择,1. 尽快恢复Principle数据库运营。2. 使用Forcing Service方法把Mirror数据库改为主数据库以继续服务。对于Forcing Service方法,我们要注意:

1. 完全停掉旧的PRINCIPLE 数据库,以避免出现两边同时做数据更新。

2. 在mirror服务器上,我们用下面命令把mirror数据库改为主数据库:

ALTER DATABASE SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS

3. 使用Forcing Service会导致数据有丢失的可能。如果在原先的主数据库数据还没来得及传送到镜像数据库, 那么该部分数据会被丢失。所以使用Forcing Service我们需要权衡。

4. 原先的主数据库起来后,Mirror会处于暂停状态,我们可以恢复镜像,把原来的主数据库为新的镜像数据库 (当然,会导致部分数据永久丢失) 。或者把原先的主数据库去除镜像设置,改为普通数据库,查看在原主数据库上写入而在原镜像数据库上没有写入的记录,然后手工倒入到新的主数据库上。用这种办法倒数据,我们需要对应用非常熟悉。

【High Satefy模式没有witness,出现异常】

演练不同模式下镜像数据库SQL Server的异常处理

· MIRROR数据库有问题,无法连接,PRINCIPLE数据库会处于 (Principle, Disconnected) 状态。在这种情况下,PRINCIPLE数据库依旧能正常服务。当MIRROR服务器恢复正常后,数据会自动进行同步,同步后,PRINCIPLE数据库会处于 (Principle, Synchronized) 正常状态。这种情况虽然不会对服务造成问题,但是我们应该尽快恢复MIRROR数据库,否则,在PRINCIPLE数据库上,日志会累积,变得越来越大。最后可能导致磁盘满。

· PRINCIPLE服务器有问题,这时候应用当然不能使用。MIRROR数据库处于 (Mirror, Disconnected/In Recovery) 状态。这时候我们有两种选择,1. 尽快恢复PRINCIPLE数据库。2. 使用Forcing Service方法把Mirror数据库改为Principle以继续服务。

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
microsoft sql server是什么软件microsoft sql server是什么软件Feb 28, 2023 pm 03:00 PM

microsoft sql server是Microsoft公司推出的关系型数据库管理系统,是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理,具有使用方便可伸缩性好与相关软件集成程度高等优点。SQL Server数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。

SQL Server还是MySQL?最新研究揭秘最佳数据库选择。SQL Server还是MySQL?最新研究揭秘最佳数据库选择。Sep 08, 2023 pm 04:34 PM

SQLServer还是MySQL?最新研究揭秘最佳数据库选择近年来,随着互联网和大数据的快速发展,数据库的选择成为了企业和开发者们面临的一个重要问题。在众多数据库中,SQLServer和MySQL作为两个最为常见和广泛使用的关系型数据库,备受争议。那么,在SQLServer和MySQL之间,到底应该选择哪一个呢?最新的研究为我们揭示了这个问题。首先,让

PHP和SQL Server数据库开发PHP和SQL Server数据库开发Jun 20, 2023 pm 10:38 PM

随着互联网的普及,网站和应用程序的开发成为了许多企业和个人的主要业务。而PHP和SQLServer数据库则是其中非常重要的两个工具。PHP是一种服务器端脚本语言,可以用于开发动态网站;SQLServer是微软公司开发的关系型数据库管理系统,具有广泛的应用场景。在本文中,我们将讨论PHP和SQLServer的开发,以及它们的优缺点和应用方法。首先,让我们

如何使用PDO连接到Microsoft SQL Server数据库如何使用PDO连接到Microsoft SQL Server数据库Jul 29, 2023 pm 01:49 PM

如何使用PDO连接到MicrosoftSQLServer数据库介绍:PDO(PHPDataObjects)是PHP提供的一个访问数据库的统一接口。它提供了许多优点,比如实现了数据库的抽象层,可以方便地切换不同的数据库类型,而不需要修改大量的代码。本文将介绍如何使用PDO连接到MicrosoftSQLServer数据库,并提供一些相关代码示例。步骤

浅析PHP连接SQL Server的五种方法浅析PHP连接SQL Server的五种方法Mar 21, 2023 pm 04:32 PM

在Web开发中,PHP与MySQL的结合是非常常见的。但是,在某些情况下,我们需要连接其他类型的数据库,例如SQL Server。在本文中,我们将介绍使用PHP连接SQL Server的五种不同方法。

SQL Server与MySQL较量,如何选择最佳数据库方案?SQL Server与MySQL较量,如何选择最佳数据库方案?Sep 10, 2023 am 08:07 AM

随着互联网的不断发展,数据库的选择愈发重要。在众多的数据库中,SQLServer和MySQL是两个备受瞩目的选项。SQLServer是微软公司开发的关系型数据库管理系统,而MySQL则是一种开源的关系型数据库管理系统。那么在SQLServer和MySQL之间如何选择最佳的数据库方案呢?首先,我们可以从性能方面比较这两个数据库。SQLServer在处理

SQL Server与MySQL对比:哪个数据库更适合高可用性架构?SQL Server与MySQL对比:哪个数据库更适合高可用性架构?Sep 10, 2023 pm 01:39 PM

SQLServer与MySQL对比:哪个数据库更适合高可用性架构?在当今的数据驱动世界中,高可用性是构建可靠和稳定系统的必要条件之一。数据库作为数据存储和管理的核心组件,其高可用性对于企业的业务运转至关重要。在众多的数据库中,SQLServer和MySQL是常见的选择。那么在高可用性架构方面,究竟哪个数据库更适合呢?本文将对二者进行对比,并给出一些建议。

SQL Server和MySQL比较:哪个更适合大规模数据处理?SQL Server和MySQL比较:哪个更适合大规模数据处理?Sep 09, 2023 am 09:36 AM

SQLServer和MySQL是目前两个非常流行的关系型数据库管理系统(RDBMS)。它们都是用于存储和管理大规模数据的强大工具。然而,它们在处理大规模数据时有一些不同之处。本文将对SQLServer和MySQL进行比较,重点是它们在大规模数据处理方面的适用性。首先,让我们来了解一下SQLServer和MySQL的基本特点。SQLServer是由微软

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境