本篇文章是SQL Server代理系列的第十二篇,详细内容请参考原文


在这一系列的上一篇,我们查看了维护计划,一个维护计划可能会创建多个作业,多个计划。你还简单地看了SSIS子系统,并查看了维护计划作业步骤的属性。在最后一篇,你将学习MSX/TSX,SQL Server代理多服务器管理。MSX/TSX允许你在多个系统上运行作业,然后将作业结果和历史记录保存到一个SQL Server实例上。
使用MSX/TSX多服务器管理——概念
多服务器管理功能,也被称为MSX/TSX特征(即主/目标服务器)已经提供了好几个版本的SQL Server。MSX/TSX提供在主服务器上定义SQL Server代理作业,然后作业运行在一个或多个目标服务器。这些目标服务器还可以发送事件到主服务器,这样你就可以在单一的视图中查看多服务器的SQL Server代理事件。
为了正确地理解MSX/TSX环境,你需要先了解一些术语和概念。包括:
->主服务器(MSX)
主服务器(MSX)是主机服务器,作业、作业步骤、计划调度都是在其上面创建。此外,作业的结果将从目标服务器的传送到主服务器。你可以在主服务器上查看所有作业的结果。
->目标服务器(TSX)
目标服务器(TSX)由一个或多个服务器配置为接受来自主服务器的作业,并报告作业跑回到主服务器(MSX)的结果。目标服务器会偶尔连接到MSX服务器下载作业,和更新作业。
->轮询间隔
在轮询间隔时目标服务器才连接到主服务器下载/更新。默认情况下,轮询间隔是一分钟。你可以改变这个间隔,基于网络负载或你需要更多或更少同步频率。
注意:在SQL Server 2008中,介绍了一种新的基于策略的管理。它的特征与MSX/TSX完全无关。
SQL Server版本之间兼容性是MSX/TSX配置中的一个关键问题。只要你的服务器都是SQL Server 2008,那么你不需要关心这个。然而,如果你像大多数人一样,有一个混合的环境,你应该仔细查看MSDN的兼容性图表关于主服务器和目标服务器之间的兼容性。在某些情况下它甚至取决于下层服务器服务包级别。
安装程序和安全注意事项
一个MSX/TSX的环境下取得成功,一些安全方面的考虑必须解决。对于SQL Server代理服务帐户安全的考虑,并有加密考虑MSX和TSX服务器之间的通信。
服务帐户选择
经常使用的默认服务帐户,如网络服务(Network Service),可能不适合你的MSX/TSX环境。因为你需要SQL Server代理服务与其他服务器和/或实例进行通信,你需要一个可以在网络上通信正常的帐户。本地服务帐户不能使用,因为你连接到远程服务器会有困难。域用户帐户,或机器帐户,是更好的选择。在所有的情况下,它不要求服务帐户是服务器上的Windows管理员被用于在MSX/TSX环境。
加密选项
如果你想禁用服务器之间的通信加密,你可以编辑SQL Server实例上的注册表。这是不推荐的,但是如果你必须这样做,请参考文档,并仔细考虑你在做什么。只有在一个很古老的MSX/TSX服务器环境才会考虑,如SQL Server 2000系统。
请注意,如果你想在家用系统配置这个,或系统没有安全证书,你将需要设置注册表禁用加密否则MSX/TSX设置肯定会失败。
设置MSX/TSX
对于这一步的目的,演示环境是同一台机器上有三个数据库实例。提前在SSMS中将这三个实例注册到资源管理器。默认实例将设置为主服务器,另外两个实例将这里命名为Target1和Target2。
建立MSX/TSX的最简单的方法是使用主服务器向导。右键单击您的SQL Server代理节点,选择多服务器管理->将其设置为主服务器...(如图12.1所示)

图12.1 启动主服务器向导
这将启动主服务器向导,你会看到欢迎画面,如图12.2所示。单击“下一步”,呈现主服务器操作员界面,如图12.3所示。输入相应的联系信息,然后单击“下一步”。

图12.2 主服务器向导欢迎页面

图12.3 主服务器操作员
单击“下一步”,会出现目标服务器”对话框(图12.4)。你可能需要在这个对话框中注册你的连接,所以点击添加连接……并添加适当的连接。对于这一步的目的,你会使用本地实例Target1和Target1。你可以随时返回,添加或删除服务器或实例。
再次单击“下一步”,和你选择的目标服务器的连接进行验证,如图12.5所示。单击“关闭”,你会被要求到指定的登录凭据。如果可能的话,接受默认设置,使用服务帐户与Windows身份验证的连接,如图12.6所示。如果你已经创建服务帐户的登录,你不需要向导为你创建登录。

图12.4 设置目标服务器

图12.5 设置目标服务器验证

图12.6 主服务器登录凭据
点击下一步,完成,你应该看到类似图12.7的向导完成后,你的默认实例为主服务器,另外两个实例作为目标服务器。你可能会得到与登录创建错误,如图12.7所示(由于在本地08和12配置有问题,图片12.8-12.11引用原文图片)。如果发生这种情况,只要登记进程成功你就可以忽略错误。错误可能仅仅意味着服务帐户已配置。

图12.7 完成向导
如果你现在刷新你的SQL Server代理节点,你会注意到,它显示每个节点的MSX/TSX的角色,如图12.8所示。

图12.8 配置好MSX/TSX后的SSMS
创建一个MSX/TSX作业
现在你已经配置完环境,是时候来创建一个主作业,将运行在所有的服务器上,并报告状态给你的主服务器。主服务器上创建一个新的作业,只有简单步骤(T-SQL类型select * from sys.all_objects)。点击目标选项卡(如图12.9所示),并选择两个目标服务器。单击“确定”,作业在主服务器上创建完成。

图12.9 让作业运行于目标服务器
等待至少一分钟,因为作业复制到目标服务器有轮询间隔的,然后刷新你的SQL Server代理作业节点,你会看到类似图12.10。注意,在主服务器上,你现在有个多服务器作业文件夹;目标服务器上会正常显示作业。

图12.10 主服务器上的作业复制到目标服务器
现在,在你的TSX服务器运行作业。等待一分钟左右,然后回到你的主服务器,右击MSXTest作业,选择查看历史记录。现在你会注意到从每个TSX服务器的历史反馈回来(注意在日志文件查看器中的Server列),如图12.11所示。

图12.11 主服务器上查看作业历史记录
事件转发
你也可以配置SQL Server错误事件转发到中心服务器,比如你的MSX服务器。这将产生额外的网络流量,但你可以在中心服务器上查看所有TSX服务器相关的事件。右键单击SQL Server代理节点,选择属性,然后在高级选项卡。你可以选择“将事件转发到其他服务器”,输入服务器名称,然后配置要转发的事件。例如,图12.12显示了一个配置,只将未处理的系统事件(严重性为17或更高)转发到MSX服务器。

图12.12 配置事件转发
下一篇
这一篇涉及SQL Server代理多服务器管理功能,MSX/TSX。你可以使用一个MSX/TSX环境集中管理作业,以及集中的事件报告。使用此功能,减少你必须连接到监视系统状态的服务器的数量。
谢谢你抽出时间来阅读SQL Server代理系列文章!

【译】第十二篇 SQL Server代理多服务器管理的更多相关文章

  1. 第十二篇 SQL Server代理多服务器管理

    本篇文章是SQL Server代理系列的第十二篇,详细内容请参考原文 在这一系列的上一篇,我们查看了维护计划,一个维护计划可能会创建多个作业,多个计划.你还简单地看了SSIS子系统,并查看了维护计划作 ...

  2. 【译】第八篇 SQL Server代理使用外部程序

    本篇文章是SQL Server代理系列的第八篇,详细内容请参考原文 在这一系列的上一篇,学习了如何用SQL Server代理作业活动监视器监控作业活动和查看作业历史记录.在实时监控和管理SQL Ser ...

  3. 【译】第六篇 SQL Server代理深入作业步骤工作流

    本篇文章是SQL Server代理系列的第六篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.每个作业步骤在技术 ...

  4. 【译】第五篇 SQL Server代理理解代理错误日志

    本篇文章是SQL Server代理系列的第五篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.在第四篇中我们看到 ...

  5. 【译】第十一篇 SQL Server代理维护计划

    本篇文章是SQL Server代理系列的第十一篇,详细内容请参考原文 在这一系列的上一篇,我们看了使用代理帐户模仿Windows安全上下文完成作业步骤的工作.大多数子系统支持代理账户,同时子系统限制代 ...

  6. 【译】第七篇 SQL Server代理作业活动监视器

    本篇文章是SQL Server代理系列的第七篇,详细内容请参考原文 在这一系列的上一篇,你创建并配置SQL Server代理作业.每个作业有一个或多个步骤,可能包含大量的工作流.在这篇文章中,将查看作 ...

  7. 【译】第四篇 SQL Server代理配置数据库邮件

    本篇文章是SQL Server代理系列的第四篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.SQL Serve ...

  8. 【译】第三篇 SQL Server代理警报和操作员

    本篇文章是SQL Server代理系列的第三篇,详细内容请参考原文. 正如这一系列的上一篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行,除了步骤中执行的工 ...

  9. 【译】第十篇 SQL Server代理使用代理帐户

    本篇文章是SQL Server代理系列的第十篇,详细内容请参考原文 在这一系列的上一篇,你查看了msdb库下用于授权访问SQL Server代理的安全角色.这些角色包括SQLAgentUserRole ...

随机推荐

  1. 笔记之远程桌面服务(RDS)

    Windows默认只能有2个用户同时通过RDP进行连接,非常不方便,于是借此机会学习了下Win2012R2的远程桌面配置.以下我把学习过程记录一下: 1. 最开始我觉得只需要安装“Remote Des ...

  2. 多线程-Thread的run()与start()的区别

    总结: 1) start: 用start方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码.通过调用Thread类的start()方法来启动一个线程,这 ...

  3. POJ2699_The Maximum Number of Strong Kings

    这题目,,,真是...诶.坑了好久. 给一个有向图.U->V表示U可以打败V并得一分. 如果一个人的得分最高,或者他打败所有比自己得分高的人,那么此人就是king. 现在给出每个人的得分,求最多 ...

  4. C#:文件/注册表/线程的操作

    文件的操作:(file与fileinfo,前者是静态方法,执行安全检查,适合对一个的操作) 1.1.create: using System; using System.Collections.Gen ...

  5. P4254 [JSOI2008]Blue Mary开公司

    题面 这道题的意思就是给出若干个一次函数,当\(x=x_0\)时,最大的\(y\)为多少 这种题可以用李超线段树来处理 什么是李超线段树呢? 李超线段树存储的是在区间上方暴露最多的直线标号,为了便于描 ...

  6. Nastya Studies Informatics CodeForces - 992B(增长姿势)

    有增长姿势了 如果a * b == lcm * gcd 那么a和b为lcm因数  这个我之前真不知道emm... #include <bits/stdc++.h> #define mem( ...

  7. Extend to Palindrome UVA - 11475(补成回文串)

    题意: 就是用最少的字符把原字符串补成回文串 解析: emm/.../网上都是用kmp和后缀数组做的 我没想到这俩的思路...emmm... 想到了exkmp的  就是原串和逆串匹配一下  注意要保证 ...

  8. [HDU4787]GRE Words Revenge 解题报告

    这是我之前博客里提到的一道AC自动机的练手题,但是要完成这道题,我之前博客里提到的东西还不够,这里总结一下这道题. 这道题不是一般的裸的AC自动机,它的询问和插入是交叉出现的所以用我之前写的板子不大合 ...

  9. mac 使用tree命令

    下载软件包: http://mama.indstate.edu/users/ice/tree/ 安装说明: http://www.qiansw.com/mac-os-x-install-tree-co ...

  10. 解题:USACO13JAN Island Travels

    题面 好像没啥可说的,就当练码力了...... 先用BFS跑出岛屿,然后跑最短路求岛屿间的距离,最后状压DP得出答案 注意细节,码码码2333 #include<set> #include ...