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

时间:2021-12-18 22:56:30

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

原文出处:http://blog.csdn.net/dba_huangzj/article/details/28904503

本文将演示如何在域环境下部署镜像,在域中部署相对来说简单很多,但是很多企业并不真正使用域来管理服务器(本人所在的公司就是其一),所以有必要演示非域环境,并且重点放在非域环境下。但是作为实践经验和最佳建议,强烈使用域环境管理。非域环境将在第四文中演示:http://blog.csdn.net/dba_huangzj/article/details/27652857 。本文只关注域环境下的搭建。

无论使用哪种方式,都可以分成两部分,第一部分是准备工作,第二部分是实施工作

准备工作:

除了OS级别的配置之外,还有下面的步骤需要提前操作:

1. 设置数据库的恢复模式,镜像需要数据库的恢复模式为完整模式,可以使用下面语句修改:

ALTER DATABASE AdventureWorks2008R2 SET RECOVERY FULL;

2. 检查数据库的兼容级别是否为90或以上,即是否为2005或以上的SQL Server,如果不是,可以使用下面脚本修改:

ALTER DATABASE AdventureWorks2008R2 SET COMPATIBILITY_LEVEL=100;--2008

SP_DBCMPTLEVEL @DBNAME=’’,@NEW_CMPTLEVEL=90  --2005

3. 配置所有所需的登录帐号,主体和镜像都要,可以使用下面方式:

1. SSIS传输登录

2. 生成脚本方式

3. 手动同步

4. 配置外部资源,比如SSIS包、维护计划,共享文件等。

安装前配置:

1. 禁用服务器上的完整备份和日志备份作业。

2. 执行完整备份,并把备份文件复制到镜像服务器

3. 使用NORECOVERY还原备份到镜像服务器,

4. 执行日志备份并复制到镜像服务器,同样以NORECOVERY还原日志

如果没有使用NORECOVERY,配置过程会报错,需要重新还原,所以这一点非常重要。

域环境下配置镜像:

环境:虚拟机使用hyper-v,安装了简单的域环境(这部分不属于演示范畴,读者可以自行查找相关资料),OS均为Windows Server 2008R2 x64。

SQL Server 2008R2 x64 企业版。创建一个域帐号 MirrorAdmin,密码为Pa$$w0rd (其中的0为数字不是字母o)。

DC上的IP:

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

SQL-A的IP:

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

SQL-B的IP:

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

添加域用户到SQL Server中:

先用域管理员或者安装时添加的Windows账号或者用sa登录:

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

然后添加新建的域账号到SQL Server中:

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

添加Windows账号:

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

添加SQL Server服务器角色,为了演示方便,这里选择sysadmin角色:

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

添加成功后,以这个加进去的Windows账号登录Windows,然后以Windows 身份验证登录SQL Server:

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

开始搭建:

下面开始使用微软示例数据库AdventureWorks2008R2作为演示:

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

文件存放在本地C:\DB\

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

首先根据前面的准备工作把库的恢复模式、完整备份等操作先做完,完整备份我们先新建一个共享文件夹存放,供传输到镜像服务器也就是本文中的SQL-B使用,注意选择【NORECOVERY】恢复状态,如图:

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

还原后在镜像数据库中可以看到如图:

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

现在回到主体服务器,打开镜像选项:

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

选择【配置安全性】:

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

这里先不搭建见证服务器,所以选择【否】:

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

这一步如果不需要改动其他信息,可以直接点【下一步】:

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

选择【镜像服务器】:

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

如果发现连不上镜像服务器,比如下面的报错:

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

可以选择关闭防火墙,或者开启5022等所需端口,直到能连上为止:

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

选择【服务账号】:

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

完成配置:

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

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

完成配置之后,界面会马上弹出是否需要【开始镜像】,如果一切准备好了,并且的确需要开启,就点击【开始镜像】:

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

成功开始镜像过程之后,可以看到如下截图,证明搭建已经完毕,可以使用红框部分的【故障转移】进行Failover,把主体数据库的活动会话转到镜像数据库上:

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

搭建完毕之后,检查两个服务器的数据库状态:

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

下面测试一下故障转移(Failover):

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

再刷新两台服务器的数据库,可见下面状态:

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

SQL Server镜像功能提供了一个【数据库镜像监视器】,可以在下图中的地方打开,这个工具在监控镜像时很有用,如何使用这个工具将在后面的文章中介绍:

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

打开之后,可以检查镜像环境的一些信息:

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

除了进行故障转移,还可以下切换运行模式 :

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

首先检查原有的运行模式:

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

可见目前是高安全性模式(Safety为FULL)。

然后进行模式转换,再检查状态:

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

可见目前已经是高性能模式(Safety为OFF)。

添加见证服务器:

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

这里需要选择【是】:

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

然后点下一步:

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

在主体服务器中连接见证服务器,也就是本文的【SQL-CORE】实例:

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

指定镜像环境中的账号,由于在域环境中,所以可以使用同一个域账号:

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

搭建完毕后可以看到下面的截图:

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

我们可以通过停止主体服务器(SQL-A)的服务进行检验:

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

可见主体数据库已经切换到原镜像服务器(SQL-B)中:

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

重新启动SQL-A,然后再停止SQL-B的服务:

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

可见主体库又回到了SQL-A中:

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

至此,域环境下的镜像搭建演示已经完毕。

SQL Server镜像有一个重要补丁,这个补丁主要是修复2005的镜像环境中日志问题,对2008不需要处理:http://support.microsoft.com/kb/947462。当你在搭建和使用2005的镜像功能时,如果报错:当您启动数据库镜像会话,SQL Server 2005 中错误消息:"与远程服务器实例的通信TCP: / / < 计算机名>:< 端口号> 数据库镜像尚未完全启动之前发生故障"。则意味着你需要使用这个补丁修复。

搭建镜像,特别在域环境中其实非常简单,本系列把重点放在自动化部署、监控和优化过程中,所以不会做过多的部署演示。

下文是对非域环境的搭建:http://blog.csdn.net/dba_huangzj/article/details/27652857

第三篇——第二部分——第三文 配置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/ ...

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

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

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

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

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

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

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

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

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

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

  8. 【开源&period;NET】轻量级内容管理框架Grissom&period;CMS(第三篇解析配置文件和数据以转换成 sql)

    该篇是 Grissom.CMS 框架系列文章的第三篇, 主要介绍框架用到的核心库 EasyJsonToSql, 把标准的配置文件和数据结构解析成可执行的 sql. 该框架能实现自动化增删改查得益于 E ...

  9. 转 一篇关于sql server 三种恢复模式的文章,从sql server 的机制上来写的,感觉很不错,转了

    简介 SQL Server中的事务日志无疑是SQL Server中最重要的部分之一.因为SQL SERVER利用事务日志来确保持久性(Durability)和事务回滚(Rollback).从而还部分确 ...

随机推荐

  1. OpenModelica仿真

    复杂产品通常涉及机械.控制.电子.液压.气动和软件等多学科领域,其设计过程需要进行仿真,以满足对成本.质量.性能等的要求.目前各个学科和领域都已经有了比较成熟的仿真软件,但大部分仿真软件仅适用于本学科 ...

  2. Daily Scrum 12&period;10

    今日完成任务: 终于修复了大部分的异常,感觉顿时松了一口气.重新在服务器上部署了webservice接口服务以及学霸网站.资源的上传下载功能正在逐渐完善. 遇到困难: 在本地运行正常,部署到服务器上运 ...

  3. Java开发者常犯的十个错误

    翻译自:Top 10 Mistakes Java Developers Make 文章列出了Java开发者最常犯的是个错误. 1.将数组转换为ArrayList 为了将数组转换为ArrayList,开 ...

  4. List&lt&semi;t&gt&semi;中如何将指定元素的值放到第一位

    public static List<GCountryExtend> GetList() { try { var result = new List<GCountryExtend&g ...

  5. zoj 3659 并检查集合

    http://acm.zju.edu.cn/onlinejudge/showProblem.do? problemId=4882 现在在牡丹江,明天regional直播比赛,我会在一个月内退休.求祝福 ...

  6. 一些常用的jquery数字正则表达式

    使用 <script type="text/javascript"> function validate(){ var reg = new RegExp("^ ...

  7. 1638&colon; &lbrack;Usaco2007 Mar&rsqb;Cow Traffic 奶牛交通

    1638: [Usaco2007 Mar]Cow Traffic 奶牛交通 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 618  Solved: 217 ...

  8. 【python学习笔记】5&period;条件、循环和其他语句

    [python学习笔记]5.条件.循环和其他语句 print: 用来打印表达式,不管是字符串还是其他类型,都输出以字符串输出:可以通过逗号分隔输出多个表达式 import: 导入模块     impo ...

  9. ubantu和虚拟机tools 安装 小问题集结

    一.虚拟机 就安装虚拟机而言,个人觉得还是比较简易的,毕竟VMware workstation pro 是一个开源的软件,只要在网上搜索即可,这里我提供一个虚拟机的资源: 链接:http://pan. ...

  10. mysql GROUP&lowbar;CONCAT 查询某个字段&lpar;查询结果默认逗号拼接&rpar;

    Mysql 的 GROUP_CONCAT 函数默认将查询的结果用逗号拼接并返回一个字符串,如:李四,long,张三 1. 常用方式 select GROUP_CONCAT(user_name) use ...