易管理性增强功能(数据库引擎)
Microsoft SQL Server 2008 数据库引擎的易管理性因工具和监视功能的增强而得以简化。
数据库管理
审核
SQL Server 审核是 SQL Server 2008 的一项新功能,可用于创建数据库引擎事件的自定义审核。SQL Server 审核使用扩展事件记录审核的信息,并提供各种必需的工具和进程以启用、存储和查看对各种服务器和数据库对象的审核。有关详细信息,请参阅审核(数据库引擎)。
备份压缩
SQL Server 2008 Enterprise 及更高版本支持压缩备份,并且每个版本的 SQL Server 2008 或更高版本都可以还原压缩备份。您可以更改单个备份、备份作业或日志传送配置的备份压缩行为。有关详细信息,请参阅备份压缩 (SQL Server)。
默认情况下,备份压缩会显著增加 CPU 使用率,这样可能会对并发操作造成不利影响。可以在会话中创建低优先级的压缩备份,其 CPU 使用率受资源调控器限制。有关详细信息,请参阅如何使用资源调控器限制备份压缩的 CPU 使用量 (Transact-SQL)。
变更数据捕获
变更数据捕获为解决以下难题提供了一种有效的解决方案,即如何高效执行从源表到数据市场和数据仓库的增量加载。变更数据捕获可插入、更新和删除应用到 SQL Server 表的活动,并以易于使用的关系格式提供这些变更的详细信息。变更数据捕获所使用的更改表中包含镜像所跟踪源表列结构的列,同时还包含了解所发生的变更所需的元数据。有关详细信息,请参阅变更数据捕获基本知识。
更改跟踪
SQL Server 更改跟踪使应用程序能够获取对用户表所做的增量更改。如果要求使用双向同步,则更改跟踪还允许应用程序检查是否存在数据冲突。将更改跟踪集成到 SQL Server 2008 以后,开发人员就不需要再创建复杂的自定义更改跟踪解决方案。
在将更改跟踪功能集成到 SQL Server 之前,开发人员通常已经创建了自定义更改跟踪解决方案,这些解决方案使用的是触发器、时间戳列、其他附加列和附加表的组合。现在,开发同步应用程序将更轻松快捷。
有关详细信息,请参阅更改跟踪。
数据收集器
SQL Server 2008 中引入了一个数据收集器,您可以用它来获取和保存从多个源收集的数据。数据收集器提供了数据收集容器,可用来确定对 SQL Server 服务器系统进行数据收集的范围和频率。有关详细信息,请参阅数据收集器简介。
检测与版本相关的数据库迁移问题
使用 sys.dm_db_persisted_sku_features (Transact-SQL) 视图来确定那些妨碍数据库迁移到另一个版本的 SQL Server 2008 的功能。
事件计数器和性能计数器
不推荐使用的计数器
性能计数器和跟踪事件可用于跟踪不推荐使用的功能的使用情况。有关详细信息,请参阅 SQL Server,Deprecated Features 对象和 SQL Server 2008 中不推荐使用的数据库引擎功能。
DDL 触发器和事件通知
可对其创建 DDL 触发器和事件通知的事件的类已扩展到包括多个存储过程,这些存储过程用于执行 DDL 式操作。有关事件的列表,请参阅 DDL 事件和 DDL 事件组。此外,事件的 XML 架构随数据库引擎一起安装,也可从 Internet 获得。有关详细信息,请参阅 EVENTDATA (Transact-SQL)。
sp_configure 选项
access check cache quota 和 access check cache bucket count 选项可控制访问检查结果缓存的条目数和哈希存储桶数。有关详细信息,请参阅访问检查缓存选项。
服务器管理
中央管理服务器
SQL Server 2008 中引入了一种用来管理多个服务器的新方法,其方法是允许您指定中央管理服务器来进行管理。被指定为中央管理服务器的 SQL Server 实例可维护已注册的服务器的列表。有关详细信息,请参阅使用中央管理服务器来管理多个服务器。
动态管理视图
有以下五个新的动态管理视图可用来显示内存信息:
sys.dm_os_sys_info 动态管理视图已停止使用 cpu_ticks_in_ms 列,且添加了两个新列 sqlserver_start_time_ms_ticks 和 sqlserver_start_time。
热添加 CPU
SQL Server 2008 支持向运行中的系统动态添加 CPU。添加 CPU 时,可以通过添加新硬件来进行物理添加,或者通过联机硬件分区进行逻辑添加,或者通过虚拟化层进行虚拟添加。有关详细信息,请参阅热添加 CPU。
“针对即席工作负荷进行优化”选项
“针对即席工作负荷进行优化”选项是一个新的服务器配置选项,可用来提高包含许多一次性即席批处理的工作负荷计划缓存的效率。如果该选项设置为 1,则数据库引擎将在首次编译批处理时在计划缓存中存储一个编译的小计划存根,而不是存储完全编译的计划。这种情况下不会让未重复使用的编译计划填充计划缓存,从而有助于缓解内存压力。有关详细信息,请参阅设置服务器配置选项。
资源调控器
资源调控器是一项可用于管理 SQL Server 工作负荷和系统资源使用情况的功能。您可使用资源调控器限制传入应用程序请求可以使用的 CPU 数量和内存量。有关详细信息,请参阅管理 SQL Server 工作负荷和资源。
SQL Server 扩展事件
SQL Server 2008 中引入了 SQL Server 扩展事件,它是一种适用于服务器系统的事件基础结构。使用此版本的扩展事件,您可以通过将事件用作跟踪点在主机进程的运行时打开窗口。然后这些事件可在内存中聚合、发送到某个文件,或输出到 Windows 事件跟踪 (ETW)。有关详细信息,请参阅 SQL Server 扩展事件简介。
基于策略的管理
Microsoft 正致力于降低总拥有成本,其中一个举措是在 SQL Server 2008 中引入了基于策略的管理,这是一个用于管理 SQL Server 的新框架。策略包含检查条件(策略所评估的状态)和筛选条件(被评估的目标集)。例如,管理员可以设置如下策略:针对所有 SQL Server 实例 SQL Mail 均处于关闭状态,或 AdventureWorks 数据库的 Marketing 架构中的表的名称应以“mk_pr_”开头。
基于策略的管理具有以下优点:
可确保符合系统配置的策略。
通过针对配置创建策略可阻止或监视对系统做出的更改。
通过简化管理任务可降低总拥有成本。
可在 SQL Server Management Studio 中检测到遵从性问题。
允许在多个服务器上同时运行策略:
包含内置函数并且支持对条件表达式执行用户定义 Transact-SQL 查询和用户定义 WMI/WQL 查询,从而可以将策略应用于指定的系统状态和目标集。
包含 40 多个即时可用的策略,这些策略符合最佳实践分析工具的规则并且符合外围应用配置器的默认系统状态设置。必须将策略导入到数据库引擎的实例。有关详细信息,请参阅如何导出和导入基于策略的管理策略。
除导入即时可用的策略之外,还可通过**“文件”/“新建”**菜单直接创建新策略。
有关如何使用基于策略的管理的详细信息和教程,请参阅使用基于策略的管理来管理服务器。
SQL Server Management Studio
查询编辑器
Transact-SQL 调试器
数据库引擎查询编辑器现在包含一个类似于 Visual Studio 调试器的 Transact-SQL 调试器。Transact-SQL 调试器有助于您通过暂停执行特定语句,然后显示数据值和系统信息(例如,Transact-SQL 调用堆栈以及存储在变量和参数中的值)查找 Transact-SQL 代码中的问题。有关详细信息,请参阅使用 Transact-SQL 调试器。
IntelliSense
数据库引擎编辑器现在可提供 IntelliSense 功能,例如单词自动完成、用下划线标记错误、参数帮助、着色、快速信息、大纲显示和语法配对。IntelliSense 是为经常使用的 Transact-SQL 元素提供的。在将来的版本中,IntelliSense 将会扩展以用于其他 Transact-SQL 元素。有关详细信息,请参阅使用 IntelliSense。
数据库引擎的“错误列表”窗口
SQL Server Management Studio 包括一个“错误列表”窗口,用于显示由数据库引擎查询编辑器中的 IntelliSense 代码生成的语法和语义错误。有关详细信息,请参阅“错误列表”窗口 (Management Studio)。
对象资源管理器
SQL Server Management Studio 的“对象资源管理器详细信息”窗口已通过以下几种方式得到增强:
您可以自定义“对象资源管理器详细信息”窗口显示的列。若要查看针对所选对象类型可能存在的列的列表,请右键单击相应的列标题。若要对显示内容重新排序,可拖动相应列。
所选项的属性显示在“对象资源管理器详细信息”窗口的底部。若要查看其他属性,可通过向上拖动状态栏的主题边框使状态栏变大。
Transact-SQL 和 MDX 的代码编辑器在底部有一个颜色编码的状态栏。该状态栏提供有关编辑器连接的信息,并且会在代码编辑器具有多个连接时更改颜色。
您可以从代码编辑器窗口的标题栏中添加或删除项的名称。若要自定义选项卡名,请在**“工具”菜单上单击“选项”,然后选择“文本编辑器”以及“编辑器选项卡和状态栏页”**。
Management Studio 增强了对对象资源管理器中所选项的详细信息的显示。可以调整列的大小,对列进行排序和重新组织;通过新的导航按钮您可以移动到父对象或最后访问的对象。您可以在详细信息区域中选择多个对象,分别对这些对象或将其作为一个组来执行操作。
从“对象资源管理器详细信息”中的对象进行的同步现在将在对象资源管理器中选择单个对象而非该详细信息对象的父对象。此外,您可以从属性列表中选择要显示的列,并且在您浏览时列的排序和选择保持不变。同时对于选定的对象,属性的列表显示在位于详细信息区域底部一个大小可调的区域中。有关详细信息,请参阅使用对象资源管理器详细信息和 SQL Server 对象搜索。
对象资源管理器中的 Service Broker 节点
对象资源管理器具有用于 Service Broker 会话优先级的新节点。此外,在您右键单击其他 Service Broker 节点时,这些节点现在可显示附加菜单选项,包括**“属性”**。有关详细信息,请参阅 Service Broker 对象属性 F1 帮助。
客户要求的改进
SQL Server Management Studio 按客户要求在以下几个方面进行了改进:
在“查询编辑器”窗口中,可通过从已注册的服务器组打开查询窗口同时查询多个服务器。可以将查询结果合并到单个结果窗格中,也可以在单独的结果窗格中返回这些结果。有关详细信息,请参阅使用中央管理服务器来管理多个服务器。
可从“查询编辑器”窗口、**“查询”**菜单、查询编辑器工具栏或通过按 CTRL+ALT+P 来访问 SQL Server Profiler。
现在,使用 Return Top n 行选项可以打开表。
您可以配置在打开表时返回的行数。
在**“工具”/“选项”**菜单上,可指定通过在对象资源管理器中双击表而生成的操作。
您可以阻止表设计器在实现设计更改时重新创建表。
**“对象详细信息”**页可通过附加列进行自定义,并且现在支持搜索。有关详细信息,请参阅使用对象资源管理器详细信息和 SQL Server 对象搜索。
使用 SQL Server Management Studio 连接时可向连接字符串添加其他连接参数。有关详细信息,请参阅连接到服务器(“其他连接参数”页)。
SQL Server PowerShell 提供程序和 Cmdlet
SQL Server 2008 中引入了两个可实现以下功能的 PowerShell 管理单元 DLL 文件:
SQL Server PowerShell 提供程序,它将 SQL Server 管理对象模型公开为类似于文件系统路径的路径。该路径中的每个节点均与一个 SQL Server 管理对象类关联。
一组用于任务(例如运行 sqlcmd 脚本、评估策略或对在 PowerShell 路径中使用的分隔标识符进行编码)的 SQL Server PowerShell cmdlet。
此外,还提供了一个新的 sqlps 实用工具,它可启动使用 SQL Server 功能(例如提供程序和管理单元)配置的 PowerShell 环境。PowerShell 子系统已添加到 SQL Server 代理,因此您可按计划或为了响应数据库引擎事件而运行 PowerShell 脚本。可通过在 SQL Server Management Studio 中右键单击对象资源管理器节点启动 SQL Server PowerShell 会话。有关详细信息,请参阅 SQL Server PowerShell 概述。