--SQL SERVER镜像切换
------------------------------2013/11/30
切换条件
 
高性能
没有见证服务器的高安全性模式
具有见证服务器的高安全性模式
自动故障转移
手动故障转移
强制服务
 
 
 
手动切换条件
 
手动故障转移
这要求使用高安全性模式。 伙伴双方必须互相连接,并且数据库必须已同步。
 
打开事务安全
连接到主体服务器。
发出以下 Transact-SQL 语句:
ALTER DATABASE <database> SET PARTNER SAFETY FULL
其中,<database> 为镜像数据库的名称。
 
关闭事务安全
连接到主体服务器。
发出以下语句:
ALTER DATABASE <database> SET PARTNER SAFETY OFF
其中,<database> 是镜像数据库。
 
手动故障转移数据库镜像会话 (Transact-SQL)
 
同步镜像数据库时(即数据库处于 SYNCHRONIZED 状态时),数据库所有者可以启动到镜像服务器的手动故障转移。 手动故障转移只能从主体服务器启动。
手动故障转移数据库镜像会话
  1. 连接到主体服务器。
  2. 将数据库上下文设置为 master 数据库:
USE master;
  1. 在主体服务器上执行下列语句:
ALTER DATABASE database_name SET PARTNER FAILOVER,其中 database_name 是镜像数据库。
此语句将立即启动从镜像服务器到主体角色的转换。
 
 
在数据库镜像会话中强制服务 (Transact-SQL)
 
强制服务(可能造成数据丢失)
数据库镜像提供强制服务(可能造成数据丢失)作为灾难恢复方法,以允许将镜像服务器用作温备用服务器。 仅当主体服务器在镜像会话中与镜像服务器断开连接时,才能强制服务运行。 因为强制服务运行存在数据丢失的风险,所以应该谨慎使用。
是否支持强制服务取决于会话的运行模式和状态,如下所示:
通常,当主体服务器断开连接时,高性能模式支持强制服务。 但是,高性能模式会话可能存在见证服务器(虽然并非必需)。 在这种情况下,强制服务要求镜像服务器和见证服务器相互连接。
当主体服务器断开连接时,不带自动故障转移功能的高安全性模式支持强制服务。
当镜像服务器和见证服务器相互连接并且它们都未连接到主体服务器时,具有自动故障转移功能的高安全性模式支持强制服务(只要当镜像服务器上次连接到主体服务器时,不回滚镜像数据库)。
建议仅当您必须立即还原数据库服务并愿意承担数据丢失的风险时,才能强制服务运行。 强制服务的结果相当于删除镜像,但强制服务在恢复镜像时便于重新同步数据库,并且可能存在数据丢失的风险。 强制服务将把主体角色平滑转换给镜像数据库。 镜像服务器将担当主体服务器角色并立即向客户端提供数据库的副本。 新的主体数据库在没有镜像的情况下运行(即公开运行)。
 
 
在高性能模式和不带自动故障转移功能的高安全性模式下,如果主体服务器失败而镜像服务器可用,则数据库所有者可以强制将服务故障转移到镜像数据库(可能造成数据丢失),从而使数据库可用。 此选项仅在以下情况中可用:
1. 主体服务器已关闭。
2.  WITNESS 设置为 OFF 或连接到镜像服务器。
 
ALTER DATABASE <database_name> SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
 
 
 
 
删除数据库镜像 (SQL Server)
 
 
本主题说明如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 2012 中从数据库删除数据库镜像。 数据库所有者可以随时通过从数据库中删除镜像来手动停止数据库镜像会话。
本主题内容
  • 开始之前:
安全性
  • 删除数据库镜像,使用:
SQL Server Management Studio
Transact-SQL
开始之前

安全性
权限
需要对数据库具有 ALTER 权限。
 [返回页首]
使用 SQL Server Management Studio

删除数据库镜像
  1. 在数据库镜像会话期间,连接到主体服务器实例,然后在对象资源管理器中,单击服务器名称以展开服务器树。
  2. 展开“数据库”并选择数据库。
  3. 右键单击数据库,选择“任务”,再单击“镜像”。 这样便可打开“数据库属性”对话框的“镜像”页。
  4. “选择页”窗格中,单击“镜像”
  5. 若要删除镜像,请单击“删除镜像”。 此时,将显示一个提示,要求您进行确认。 如果单击“是”,会话将停止,并从数据库中删除镜像。
 [返回页首]
使用 Transact-SQL

若要删除数据库镜像,请使用“数据库属性”, 即使用“数据库属性”对话框的“镜像”页。
删除数据库镜像
  1. 为任一镜像伙伴连接到数据库引擎。
  2. 在标准菜单栏上,单击“新建查询”
  3. 发出以下 Transact-SQL 语句:
  4. ALTER DATABASE database_name SET PARTNER OFF
其中,database_name 是要删除其会话的镜像数据库。
以下示例从 AdventureWorks2012 示例数据库删除数据库镜像。
ALTER DATABASE AdventureWorks2012 SET PARTNER OFF;
后续操作:在删除数据库镜像之后

 注意
有关删除镜像会产生什么影响的信息,请参阅删除数据库镜像 (SQL Server)
  • 如果您打算在数据库上重新启动镜像
重新启动镜像之前,必须将在删除镜像后对主体数据库执行的日志备份全部应用到镜像数据库中。
  • 如果不打算重新启动镜像
或者,可以恢复以前的镜像数据库。 在作为镜像服务器的服务器实例上,可以使用以下 Transact-SQL 语句:
RESTORE DATABASE database_name WITH RECOVERY;
重要提示
如果恢复该数据库,则两个同名的不同数据库处于联机状态。 因此,需要确保客户端仅可访问其中一个数据库,通常为最新的主体数据库。
 [返回页首]
 

参考:http://msdn.microsoft.com/zh-cn/library/ms190471.aspx
http://msdn.microsoft.com/zh-cn/library/ms175082.aspx
http://msdn.microsoft.com/zh-cn/library/ms189850.aspx
http://msdn.microsoft.com/zh-cn/library/ms189852.aspx

SQL SERVER镜像切换的更多相关文章

  1. 第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护

    本文接上面两篇搭建镜像的文章: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境:http://blog.csdn.net/dba_huangzj/article/details/ ...

  2. 三——第二部分——第二篇论文 计划建设SQL Server镜像

    本文接着前面的章节:SQL Server镜像简单介绍 本文出处:http://blog.csdn.net/dba_huangzj/article/details/27203053 俗话说:工欲善其事必 ...

  3. 第三篇——第二部分——第三文 配置SQL Server镜像——域环境

    原文:第三篇--第二部分--第三文 配置SQL Server镜像--域环境 原文出处:http://blog.csdn.net/dba_huangzj/article/details/28904503 ...

  4. 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境

    原文:第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj/ ...

  5. 第三篇——第二部分——第一文 SQL Server镜像简介

    原文:第三篇--第二部分--第一文 SQL Server镜像简介 原文出处:http://blog.csdn.net/dba_huangzj/article/details/26951563 镜像是什 ...

  6. 第三篇——第二部分——第二文 计划搭建SQL Server镜像

    原文:第三篇--第二部分--第二文 计划搭建SQL Server镜像 本文紧跟上一章:SQL Server镜像简介 本文出处:http://blog.csdn.net/dba_huangzj/arti ...

  7. 第三篇——第二部分——第一文 SQL Server镜像简单介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/DBA_Huangzj/article/details/26951563 原文出处:http://bl ...

  8. SQL Server镜像自动生成脚本

    SQL Server镜像自动生成脚本 镜像的搭建非常繁琐,花了一点时间写了这个脚本,方便大家搭建镜像 执行完这个镜像脚本之后,最好在每台机器都绑定一下hosts文件,不然的话,镜像可能会不work 1 ...

  9. 第三篇——第二部分——第六文 监控SQL Server镜像

    原文:第三篇--第二部分--第六文 监控SQL Server镜像 原文出处:http://blog.csdn.net/dba_huangzj/article/details/26846203 要优化, ...

随机推荐

  1. Linux之用户管理--初级上

    管理用户命令汇总 命令 注释说明(特殊颜色的必须掌握) useradd增 同adduser命令,执行此命令可在系统中添加用户.(更改4个用户文件) userdel删 执行此命令可删除用户及相关用户的配 ...

  2. iOS开发Safari调试WebView页面

    App混合开发现已是常态,不过作为app端开发人员,对H5页面的使用,可不能简单的局限于使用,一些简单的调试方法还是有必要了解的. 关于如何在使用webview过程中,如何对web内对内容进行调试,这 ...

  3. [Android FrameWork 6.0源码学习] LayoutInflater 类分析

    LayoutInflater是用来解析XML布局文件,然后生成对象的ViewTree的工具类.是这个工具类的存在,才能让我们写起Layout来那么省劲. 我们接下来进去刨析,看看里边的奥秘 //调用i ...

  4. C++学习(三)入门篇——函数

    C++函数分两种:有返回值的和没返回值的 1.有返回值的函数 调用函数流程 如图,sqrt(6.25)为函数调用,被调用的函数叫做被调用函数,包含函数调用的函数叫做调用函数. 参数是发送给函数的信息, ...

  5. struts2教程&实例

    1.第一个struts2项目 参考官方配置 http://struts.apache.org/getting-started/ github地址:https://github.com/unbeliev ...

  6. bash脚本的特性01

    1.bash特性之多命令执行 read -p "please enter a passwd for $name ,[passwd]: " password [ -z "$ ...

  7. android - gradle编译错误 exit value 1,2,3总结

    在使用jenkins,使用gradle编译的时候总会出现一些问题,下面是几个常见问题的解决方法. 被编译的代码或资源有问题( finished with non-zero exit value 1): ...

  8. HTML5 开发APP(MUI的一些特性)

    先附mui文档地址:http://dev.dcloud.net.cn/mui/ui/  .mui的UI组件比较简单而且在文档中很好找就不过多说了. 1 在app开发中,使用HTML5+的api,必须m ...

  9. CSS随笔2

    1. css中: a:link { /*表示普通的,未被访问的链接状态*/    color: black;} a:visited { /*表示链接被访问过后的状态*/    color: bluev ...

  10. linux(centos)下安装PHP的PDO扩展

    PHP 数据对象PDO扩展为PHP访问数据库定义了一个轻量级的一致接口.PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据.最近在我们的建站和O ...