<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60"></iframe>
优化较大的工作负荷会对所优化的服务器产生很大的开销。开销是由数据库引擎优化顾问在优化进程中多次调用查询优化器导致的。如果除生产服务器以外,再使用一台测试服务器,则可以消除此开销问题。
<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="ctl00_LibFrame_ctl02img" style="WIDTH: 12pt; HEIGHT: 12pt" o:button="t" alt="数据库引擎优化顾问如何使用测试服务器" type="#_x0000_t75" o:spid="_x0000_i1025"><imagedata o:href="http://msdn2.microsoft.com/msdn/Controls/CollapsibleArea/en-us/minus.gif" src="file:///C:/DOCUME~1/zouzhen/LOCALS~1/Temp/msohtml1/01/clip_image001.gif"></imagedata></shape> 数据库引擎优化顾问如何使用测试服务器
使用测试服务器的传统方法是将所有数据从生产服务器复制到测试服务器,优化测试服务器,然后在生产服务器上实现建议。此过程可以消除对生产服务器的性能影响,但这不是最佳解决方案。例如,将大量数据从生产服务器复制到测试服务器可能消耗大量时间和资源。此外,测试服务器硬件很少像生产服务器中部署的硬件那样功能强大。优化进程依赖于查询优化器,而它生成的建议部分依赖于基础硬件。如果测试服务器硬件和生产服务器硬件不相同,数据库引擎优化顾问建议的质量就会降低。
若要避免出现这些问题,数据库引擎优化顾问将通过把大部分优化负荷转移到测试服务器,优化生产服务器上的数据库。它通过使用生产服务器硬件配置信息,而不是真正地将数据从生产服务器复制到测试服务器,来执行该操作。数据库引擎优化顾问不会将实际数据从生产服务器复制到测试服务器中。它仅复制元数据和必要的统计信息。
下列步骤概要介绍了用于在测试服务器上优化生产数据库的过程:
1. 确保两台服务器上都存在要使用测试服务器的用户。
开始之前,请确保两台服务器上都存在要使用测试服务器来优化生产服务器上的数据库的用户。这就需要您在测试服务器上创建用户及其登录帐户。如果您在两台计算机上都是 sysadmin 固定服务器角色成员,将不需要执行此步骤。
2. 优化测试服务器上的工作负荷。
若要优化测试服务器上的工作负荷,必须通过 dta 命令行实用工具使用 XML 输入文件。在 XML 输入文件中,在 TuningOptions 父元素下使用 TestServer 子元素指定测试服务器的名称,并为其他子元素指定值。
在优化进程中,数据库引擎优化顾问将在测试服务器上创建 Shell 数据库。若要创建此 Shell 数据库并对其进行优化,数据库引擎优化顾问需要在下列情况下调用生产服务器:
a. 数据库引擎优化顾问将元数据从生产数据库导入到测试服务器 Shell 数据库。此元数据包括空表、索引、视图、存储过程和触发器等。这使得对测试服务器 Shell 数据库执行工作负荷查询成为可能。
b. 数据库引擎优化顾问从生产服务器导入统计信息,以便查询优化器可以准确优化对测试服务器的查询。
c. 数据库引擎优化顾问从生产服务器导入指定处理器数和可用内存量的硬件参数,为查询优化器提供生成查询计划所需的信息。
3. 数据库引擎优化顾问优化完测试服务器 Shell 数据库后,将生成优化建议。
4. 将通过优化测试服务器得到的建议应用于生产服务器。
注意:
在数据库引擎优化顾问的图形用户界面 (GUI) 中不支持测试服务器优化功能。
示例
首先,请确保测试服务器和生产服务器上都存在要执行优化的用户。
将用户信息复制到测试服务器后,就可以在数据库引擎优化顾问 XML 输入文件中定义测试服务器优化会话。下面的示例 XML 输入文件说明如何使用数据库引擎优化顾问指定测试服务器来优化数据库。
在此示例中,MyDatabaseName 数据库在 MyServerName 上进行优化。Transact-SQL 脚本(即 MyWorkloadScript.sql)用作工作负荷。此工作负荷包含对 MyDatabaseName 执行的事件。查询优化器对此数据库的大部分调用操作(作为优化进程的一部分发生)是由驻留在 MyTestServerName 上的 Shell 数据库实现的。Shell 数据库由元数据和统计信息构成。此进程会将优化开销卸载到测试服务器。数据库引擎优化顾问使用此 XML 输入文件生成优化建议时,应只考虑索引 (<featureset>IDX</featureset>) 而不考虑分区,并且不需要在 MyDatabaseName 中保留现有的任何物理设计结构。
<?xml version="1.0" encoding="utf-16" ?><dtaxml xmlns:xsi="http://www.w3.org/<st1:rtx w:st=" on>2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/sqlserver/2004/07/dta"> <p></p></dtaxml>
<dtainput><p></p></dtainput>
<server><p></p></server>
<name>MyServerName</name>
<database><name>MyDatabaseName</name></database>
<workload><p></p></workload>
<file>MyWorkloadScript.sql</file>
<tuningoptions><p></p></tuningoptions>
<testserver>MyTestServerName</testserver>
<featureset>IDX</featureset>
<partitioning>NONE</partitioning>
<keepexisting>NONE</keepexisting>
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1441582
相关推荐
Microsoft SQL Server 2005 向后兼容组件SQLServer2005_BC.msi
Microsoft SQL Server 2005 Backward Compatibility Components (Microsoft SQL Server 2005 向后兼容组件) SQL Server Backward Compatibility 包中包含 最新版本的 Data Transformation Services 2000 运行时 ...
SQL2005性能优化大全,sqlserver性能优化,包括:什么叫做索引、利用索引优化sqlserver查询、使用数据库分区表提高程序检索效率、提高数据库查询效率的实用方法、SQL数据进行排序、分组、统计技巧;SQL Server查询...
本书通过大量翔实的示例,向读者展示了SQL Server 2005数据库的原理、开发、应用及管理的相关技术和技巧。全书15章,可分为3大部分:第1部分(第1、2章)概述了数据库的基本原理,包括数据处理的基础知识、数据库的基本...
sql server 2005 sp4补丁。 sql server 2005 sp4补丁 sql server 2005 sp4补丁 希望有人能用到。
以SQL Server顶尖专家的视角,带你深入到SQL Server 2005性能调优和优化的内部。该书包括指导性强的实践、实用的建议及丰富的示例代码,使你的查询语句效率更高,效果更好,以达到数据库性能的优化。 探索如何 通过...
解决SQL Server 2005 Express中无法连接到服务器问题
SqlServer2005性能优化 Sql的优化很重要 但很多人不懂如何优化
该书解释并比较了SQL Server 2000和SQL Server 2005在数据库开发相关问题上的解决方案,深入讨论了SQL Server 2005中新增的T-SQL编程特性,包含了大量的代码示例、表示例和逻辑难题以帮助数据库开发人员和管理员理解...
SQL Server的链接服务器技术小结
sql server 2005 完整版,下载压缩文件,里面含有32位的和64位的可选择
利用SQL server 2005的复制功能分散用户访问服务器的负载利用SQL server 2005的复制功能分散用户访问服务器的负载利用SQL server 2005的复制功能分散用户访问服务器的负载
出现故障时,切换到镜像服务器上的速度,大约10 秒以内,这要比SQL SERVER2005 群集故 障切换速度提高了20 秒(不包括RECOVERY 动作)。为企业业务需求的应用环境又扩充了新 的解决方案。这里需要注意的是,只有打上...
Microsoft SQL Server 2005 Backward Compatibility Components (Microsoft SQL Server 2005 向后兼容组件) SQL Server Backward Compatibility 包中包含最新版本的 Data Transformation Services 2000 运行时 (DTS...
SQL Server 2005 php驱动是php5的一个扩展,它提供访问SQL Server 2005和SQL Server 2000.该扩展数据访问接口可以应用在所有版本(包括体验版)的SQL Server 2005和SQL Server 2000.该SQL Server 2005 php驱动支持...
sqlserver 2005 express x64安装。 这个版本非常的好用。
《sql server 2005 技术内幕 T-SQL查询》 《sql server 2005 技术内幕 T-SQL程序设计》 网上大多的资源都是英文的,好容易找到中文的了,上传上来和大家分享。 这两本书都是中文的(很不容易哟),是高清晰的pdf...
QC9.0+SQLServer2005安装问题解决办法
SQL server 2005 Express与速达的连接问题,问题描述:安装光盘自带的 SQL server 2005 express,速达无法连接到数据库。
SQL Server 2012链接服务器到PostgreSQLSQL Server 2012链接服务器到PostgreSQLSQL Server 2012链接服务器到PostgreSQLSQL Server 2012链接服务器到PostgreSQLSQL Server 2012链接服务器到PostgreSQL