SQL Server 2005 新增功能
企业数据管理
在当今的互联世界中,数据和管理数据的系统必须始终为用户可用且能够确保安全。有了 SQL Server 2005,组织内的用户和信息技术 (IT) 专家将从减少的应用程序停机时间、提高的可伸缩性及性能、更紧密而灵活的安全控制中获益。SQL Server 2005 也包括了许多新的和改进的功能来帮助 IT 工作人员更有效率地工作。SQL Server 2005 包含几个在企业数据管理中关键的增强:
• 易管理性
• 可用性
• 可伸缩性
• 安全性
易管理性
SQL Server 2005 使部署、管理和优化企业数据以及分析应用程序变得更简单、更容易。作为一个企业数据管理平台,它提供单一管理控制台,使数据管理员能够在任何地方监视、管理和调谐企业中所有的数据库和相关的服务。它还提供了一个可以使用 SQL 管理对象轻松编程的可扩展的管理基础结构,使得用户可以定制和扩展他们的管理环境,同时使独立软件供应商 (ISV) 也能够创建附加的工具和功能来更好地扩展打开即得的能力。
SQL Server Management Studio
SQL Server 2005 通过提供一个集成的管理控制台来监视和管理 SQL Server 关系数据库、Integration Services、Analysis Services、Reporting Services、Notification Services 以及在数量众多的分布式服务器和数据库上的 SQL Server Mobile Edition,从而简化了管理工作。数据库管理员能够同时执行多个任务,例如,编写和执行查询,查看服务器对象,管理对象,监视系统活动和查看联机帮助。SQL Server Management Studio 提供了一个开发环境,可在其中使用 Transact-SQL、多维表达式、XML for Analysis 和 SQL Server Mobile Edition 来编写、编辑和管理脚本和存储过程。Management Studio 可以很容易地与源代码控制集成在一起。Management Studio 还包括一些工具可用来调度 SQL Server 代理作业和管理维护计划,以自动执行日常维护和操作任务。管理和脚本编写集成在单一工具中,同时,该工具具有管理所有类型的服务器的能力,为数据库管理员们提供了更强的生产效率。
SQL Server 2005 开放了 70 多个新的内部数据库性能和资源使用的度量值,涵盖了从内存、锁定到对事务、网络和磁盘 I/O 的调度等。这些动态管理视图 (DMV) 提供了对数据库和强大的基础结构的更大的透明度和可见性,可以主动监视数据库的状况和性能。
SQL 管理对象
SQL 管理对象 (SMO) 是一个新的可编程对象集,它可实现所有 SQL Server 数据库的管理功能。事实上,Management Studio 就是构建在 SQL 管理对象之上的。SMO 是作为 Microsoft .NET Framework 程序集实现的。您可以使用 SMO 自动执行常见的 SQL Server 管理任务,例如,用编程方式检索配置设置,创建新数据库,应用 Transact-SQL 脚本,创建 SQL Server 代理作业以及调度备份等。SMO 对象模型替代了包含在 SQL Server 早期版本中的分布式管理对象 (DMO),因为它更安全可靠并具有更高的可伸缩性。
可用性
在高可用性技术、额外的备份和恢复功能,以及复制增强上的投资使企业能够构建和部署高可用的应用程序。在高可用性上的创新有:数据库镜像、故障转移群集、数据库快照和增强的联机操作,这有助于最小化停机时间,并确保可以访问关键的企业系统。本节将详细介绍这些增强特性。
数据库镜像
数据库镜像允许事务日志以连续的方式从源服务器传递到单台目标服务器上。当主系统出现故障时,应用程序可以立即重新连接到辅助服务器上的数据库。辅助实例几秒钟内即可检测到主服务器发生了故障,并能立即接受数据库连接。数据库镜像工作在标准服务器硬件下,不需要特定的存储或控制器。图 1 显示了数据库镜像的基本配置。
图 1:数据库镜像的基本配置
故障转移群集
故障转移群集是一个高可用的解决方案,它利用 Microsoft Windows 集群服务创建容错虚拟服务器,一旦数据库服务器出现故障,便可提供快速故障转移。在 SQL Server 2005 中,SQL Server Analysis Services、Notification Services 和 SQL Server 复制现在都已支持故障转移群集。群集节点的最大数量也增加到 8 个。SQL Server 故障转移群集现在已是一个完整的容错服务器解决方案。
高可用特性 数据库镜像 故障转移群集
自动故障转移
是
是
透明的客户端重定向
是,自动重定向
是,重新连接到同一个 IP
对总体吞吐量的影响
影响极小或没有影响
没有影响
零工作丢失
是
是
要求认证的硬件
否
是
提供冗余数据
是
否
数据库快照
SQL Server 2005 所引入的这一功能使数据库管理员可以创建即时且只读的数据库视图。数据库快照提供了稳定的视图,而不必花时间或存储开销来创建数据库的完整副本。由于主数据库背离了快照,快照将在原始页被更改时自行添加有关副本。因此,快照可被用于快速恢复数据库的意外更改,只要通过对主数据库重新应用来自快照的原始页就能实现。
快速恢复
SQL Server 2005 通过一个新的快速恢复选项提高了 SQL Server 数据库的可用性。在事务日志前滚之后,用户可以重新连接到恢复数据库。SQL Server 早期版本要求即便用户无需访问数据库中受影响的部分,也需等到不完整的事务回滚之后才能进行重新连接。
专用管理员连接
SQL Server 2005 引入了一个专用的管理员连接来访问正在运行的服务器,即便该服务器没有响应或不可用。这样,用户就可以执行诊断功能或 Transact-SQL 语句,以便对服务器进行故障诊断。该连接由 sysadmin 固定服务器角色的成员来激活,并仅通过 SQLCMD 命令提示工具在本地或从远程计算机才能使用。
联机操作(索引操作和还原)
联机创建、重建或删除索引的功能是 SQL Server 2005 的一个增强功能。SQL Server 2005 加强了 SQL Server 早期版本的索引功能。联机索引选项允许在执行索引数据定义语言 (DDL) 时,对基础表或聚集索引数据以及任何关联的索引进行并发修改(更新、删除和插入)。有了对联机索引操作的支持,用户可以在不干预对表或其他现有索引的访问的情况下添加索引。此外,服务器工作负荷允许索引操作充分利用并行处理的高效性。SQL Server 2005 引入联机恢复功能以便在 SQL Server 实例运行时执行还原操作。联机还原功能提高了 SQL Server 的可用性,因为只有被还原的数据是不可用的。数据库的其他数据保持联机并且可用。SQL Server 的早期版本要求用户在还原数据库之前让数据库脱机。
复制
复制通过在多个数据库服务器上分发数据来提高数据的可用性。允许应用程序在多个数据库上扩展 SQL Server 读取工作负荷,从而提高了可用性。SQL Server 2005 使用一种新的对等模型增强了复制功能,这个新模型提供了一个新拓扑结构,使数据库可以与任何同级数据库进行事务同步。
可伸缩性
可伸缩性的改进(如表分区、快照隔离和 64 位支持)将使您能够使用 SQL Server 2005 构建和部署最关键的应用程序。对大型表和索引的分区功能显著地增强了大型数据库的查询性能。
表和索引分区
表和索引分区把数据库分成更小、更易管理的块,从而简化了大型数据库的管理。对数据库领域而言,在表、数据库和服务器之间的数据分区已不是一个新的概念,SQL Server 2005 提供了在数据库的文件组之间表分区的功能。水平分区允许把表分区方案分成多个小的分组。表分区用于非常大的数据库,从几百 GB 到 TB、甚至更大的数据库。
快照隔离
将数据复制、转换并存档到面向分析的数据库后,必须定期维护和/或重建这些数据。查看事务上一致的数据库版本肯定对用户有好处;然而,用户查看的数据版本不再是当前版本。构建和索引这些数据可能会花很长时间,而且它们也许并不是用户真正想要的数据。这就是快照隔离能够发挥作用的地方。快照隔离级别通过使用一个数据库的事务一致视图来允许用户访问最后被提交的行。新的隔离级别提供下列优点:
• 为只读应用程序增加数据可用性。
• 允许在联机事务处理 (OLTP) 环境中对读操作不加锁。
• 对写事务自动进行强制冲突检测。
• 简化应用程序从 Oracle 到 SQL Server 的迁移过程。
复制监视器
复制监视器工具在管理复杂数据复制操作的易用性方面建立了新的标准,它提供了直观的用户界面和大量的数据指标。
对 64 位系统 Itanium 2 和 x64 的支持
SQL Server(64 位)特别为 Intel Itanium 处理器进行了优化,它可以对关键资源(如缓冲池、缓存和排序堆)利用高级内存寻址功能,从而减少执行多次 I/O 操作造成的数据在内存和磁盘之间的交换。它具有更强大的处理功能且不存在 I/O 滞后负面影响,使应用程序的可伸缩性达到了一个新的层次。Windows Server 2003 x64 为同一系统上的 32 位和 64 位应用程序提供了很高的性能。基础体系结构是基于对行业标准 x86 指令集的 64 位扩展,允许现在的 32 位应用程序以本机方式在 x64 处理器上运行。同时,新的 64 位应用程序可在 64 位模式下运行,这样能够在每个时钟周期内处理更多数据,允许对内存进行更多访问以及加快数值计算。其结果是提供了一个平台,既可利用现有丰富的 32 位应用程序,又提供了向 64 位计算平滑迁移的途径。
安全性
SQL Server 2005 在数据库平台的安全模型上有了显著的增强,由于提供了更为精确和灵活的控制,数据安全更为严格。在许多性能上进行了大量投入,用于为您的企业数据提供更高级别的安全性,其中包括以下方面:
• 在身份验证空间中,强制执行 SQL Server 登录密码的策略。
• 在身份验证空间中,根据在不同范围上指定的权限来提供更细的粒度。
• 在安全管理空间中,允许所有者和架构的分离。
授权
SQL Server 2005 中新的安全模式允许管理员在某个粒度级别上和某个指定范围内管理权限,这样,管理权限更加容易并且权限最低原则得到遵循。SQL Server 2005 允许为一个模块中语句的执行指定上下文。这个功能同时也在细化权限管理时起了很重要的作用。
身份验证
SQL Server 2005 集群支持针对 SQL Server 2005 虚拟服务器的 Kerberos 身份验证。管理员可以在标准登录上指定 Microsoft Windows 类型的策略,以便对域中的所有帐户应用一致的策略。
本机加密
SQL Server 2005 与密钥管理基础架构完全集成,支持在数据库自身内部的加密功能。默认情况下,客户端/服务器端通信是加密的。为确保集中安全,服务器端策略可定义为拒绝不加密的通信。
SQL Server 和可信计算
Microsoft 可信计算计划描述了一个框架,它定义支持更安全计算的必要步骤和帮助您部署及维护更安全环境的措施。这些步骤能在软件生命周期的每一阶段——从设计、发布到维护,保护您的数据和系统的机密性、完整性和可用性。为支持可信计算计划的四个原则,Microsoft 和 SQL Server 团队采取以下步骤:
• 设计安全。SQL Server 开发团队完成了多次安全审核,花了两个多月时间研究 SQL Server 各个组件及它们之间的交互性。对于每一个潜在的安全威胁,开发团队都做了威胁分析以评估该问题,并完成了附加设计和测试工作来完全消除潜在的安全问题。正是由于这样的工作,SQL Server 2005 包括了许多新的服务器安全功能。
• 默认安全。在安装 SQL Server 2005 时,安装程序将为所有安装选项选择正确的配置设置,以确保在新系统安装结束时,系统默认处于安全状态。
• 部署安全。Microsoft 已创建了帮助组织使用正确的安全凭据部署 SQL Server 的内容,帮助用户充分理解必需的步骤和权限。SQL Server 部署工具提供了理解您在部署期间需要作出的决定的必要信息。您可以容易地找到安全更新并进行安装,而且如果选择了该选项,安全更新功能将会自动安装。也可以使用帮助您评估和管理组织安全风险的工具。
开发人员的生产效率
SQL Server 2005 包含许多可以显著提高开发人员生产效率的新技术。从对 .NET Framework 的支持到与 Visual Studio 的紧密集成,这些功能使开发人员能够以较低的成本更轻松地创建安全、强大的数据库应用程序。SQL Server 2005 使开发人员可以利用现有的跨多种开发语言的技巧并且为数据库提供端对端开发环境。本机 XML 功能也使开发人员能够创建运行在不同平台或设备上的新型应用程序。
对开发人员生产效率的增强包括以下方面:
• 扩展的语言支持
• 改进的开发工具
• 扩展性
• 改进的数据访问
• XML 和 Web services
• 应用程序框架
扩展的语言支持
由于公共语言运行时 (CLR) 承载于数据库引擎之中,开发人员可以选择他们熟悉的语言来开发数据库应用程序,包括 Transact-SQL、Microsoft Visual Basic .NET 和 Microsoft Visual C# .NET。此外,通过用户自定义的类型和函数,CLR 宿主为开发人员提供更高的灵活性。CLR 还提供使用非 Microsoft 代码快速开发数据库应用程序的机会。
CLR/.NET Framework 集成
随着 SQL Server 2005 的发布,数据库编程人员现在可以充分利用 Microsoft .NET Framework 类库和现代编程语言来实现服务器中的功能。通过集成的 CLR,您可以使用所选择的 .NET Framework 语言对存储过程、函数和触发器进行编码。Microsoft Visual Basic .NET 和 C# 编程语言都提供面向对象的结构、结构化的异常处理、数组、命名空间和类。此外,.NET Framework 提供的数千个类和方法也扩展了内置功能,使您能够更容易地在服务器端使用。许多之前用 Transact-SQL 代码难以实现的任务,现在可以更容易地用托管代码实现。同时,系统还新增了两个数据库对象类型:聚合和用户自定义类型。现在,您可以更好地使用已掌握的新知识和技巧编写进程内代码。总之,SQL Server 2005 能够使您扩展数据库服务器,以便更容易地在后端执行适当的计算和操作。
SQL Server 和 CLR 间的集成提供了几个主要优点:
• 增强的编程模型。.NET Framework 兼容的编程语言在许多方面要比 Transact-SQL 更强大,它提供 SQL Server 开发人员之前不能使用的结构和功能。
• 增强的安全性。在 CLR 环境下运行的托管代码被数据库引擎所控制,这使得 .NET Framework 数据库对象比早期版本的 SQL Server 中的扩展存储过程运行更安全,并具备更好的安全性。
• 用户自定义类型和聚合。借助 CLR 宿主,这两个新的数据库对象扩展了 SQL Server 的存储和查询能力。
• 通用开发环境。数据库开发已集成到 Microsoft Visual Studio 2005 开发环境中。可以使用与编写中间层或客户层 .NET Framework 组件和服务相同的工具来开发和调试数据库对象和脚本。
• 性能和可伸缩性。因为托管代码被编译为本机代码得以优先执行,在某些场合性能可以得到显著的提升。
利用 CLR 集成,您可以用 Visual Basic .NET 和 C# 这样的语言写出具有更复杂逻辑的代码和更适用于计算型任务的代码。而且,Visual Basic .NET 和 C# 还提供了诸如封装、继承、多态这样的面向对象的功能。您可以轻松地将相关代码组织到类和命名空间中,这意味着可以在使用大量代码时更轻松地组织和维护代码投入。这种在逻辑上和物理上将代码组织到程序集和命名空间中的功能非常有用,它将使您能够更好地在一个大型数据库实现项目中发现和关联不同的代码块。
托管代码在处理数字和管理复杂执行逻辑上比 Transact-SQL 更有效,它还提供对字符串处理、正则表达式等的额外支持。此外,由于现在可以利用 .NET Framework 类库的功能,您可以更容易地从存储过程、触发器、用户自定义函数中访问几千个内置的类和例程。通过托管存储过程、函数、触发器和聚合,可以更容易地实现改进的字符串处理函数、数学函数、日期操作、系统资源的访问、高级加密算法、文件访问、图像处理和 XML 数据操作等功能。
托管代码的一个主要优点就是类型安全。在托管代码执行之前,CLR 将执行一些检查,通过一个被称之为“验证”的处理过程来保证所运行的代码是安全的。例如,会检查代码以确保不会读未写的内存。
Transact-SQL 增强
Transact-SQL 长期以来已成为所有 SQL Server 可编程性的基础。SQL Server 2005 提供了许多新的语言功能,可用于开发可伸缩的数据库应用程序。这些增强包括错误处理、新的递归查询功能和对新 SQL Server 数据库引擎功能的支持。SQL Server 2005 中的 Transact-SQL 的增强可提高您在查询编写上的表达能力,使您可以提高代码性能和扩展错误管理能力。对增强 Transact-SQL 所投入的不断努力体现了对它在 SQL Server 中的重要作用所持有的坚定信念。
改进的开发工具
开发人员可将一种开发工具用于 Transact-SQL、XML、多维表达式 (MDX) 和 XML for Analysis (XMLA)。与 Visual Studio 开发环境的集成将使行业和商业智能 (BI) 应用程序的开发和调试更有效。
Business Intelligence Development Studio
Business Intelligence Development Studio 是一个通用开发环境,它可根据包含数据库引擎、分析服务和报表服务的 Visual Studio 来生成 BI 解决方案。使用 Business Intelligence Development Studio 图形用户界面 (GUI) 可为数据管理应用程序设计 SQL Server Integration Services (SSIS) 包。通过从工具箱拖动任务,设置它们的属性并用优先约束将任务进行连接,您可以在 Business Intelligence Development Studio 中设计、开发和调试 SSIS 包。图 2 显示 Visual Studio 中的 Business Intelligence Development Studio 界面。
SQL SERVER DEVELOPER版有速度限制吗
转载文章标签 sql server 数据库 microsoft 服务器 .net 文章分类 SQL Server 数据库
-
SQL Server 账号管理1
SQL Server 账号管理主要包含登录名、用户、架构、角色等管理。通过对账号的管理可以有效的提高数据库系统的安全性,规范运维及使用。注意:登录名是实例下的安全对象,用户、架构及角色是数据库下的安全对象
登录名 用户名 数据库级的主体 SQL Server 级的主体 安全对象