在 SQL Server 的网络数据库文件的支持说明

文章翻译 文章翻译
文章编号: 304261 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

通常,Microsoft 建议您使用的存储区域网络 (SAN) 或本地连接的磁盘用于 Microsoft SQL Server 数据库文件的存储因为此配置优化 SQL Server 的性能和可靠性。默认情况下,SQL Server 的未启用网络数据库文件 (存储在网络的服务器或网络连接存储 [NAS]) 的使用。

但是,您可以配置 SQL Server,以将数据库存储在网络的服务器或 NAS 存储服务器上。用于此目的的服务器必须满足 SQL Server 数据的写入顺序和写入保证,将在"更多信息"一节中详细介绍。

Windows 硬件质量实验室 (WHQL) 鉴定设备

Microsoft Windows 服务器和网络的服务器或 NAS 存储服务器的 Windows 硬件质量实验室 (WHQL) 自动认证符合数据的写入顺序和写入保证支持 SQL Server 存储设备所需。这些配置,Microsoft 应用程序和存储相关的问题提供支持。

注意要支持 SQL Server,NAS 存储解决方案还应满足以下 Microsoft 网站列出的所有要求:
http://download.microsoft.com/download/6/E/8/6E882A06-B71B-4642-9EB4-D1EA0D6223C8/SQL%20Server%20IO%20Reliability%20Program%20Requirements%20Document.docx

其他设备

如果在使用 SQL Server 支持事务性数据库使用本文中介绍的 I/O 保证非 WHQL 经认可的存储设备,Microsoft 将提供完全支持 SQL Server 和基于 SQL Server 的应用程序。但是,问题,或所致,该设备或其存储子系统请咨询该设备制造商。如果使用不支持的 I/O 保证事务数据库应用本文中介绍的非 WHQL 经认可的存储设备时,Microsoft 不能提供对 SQL Server 或基于 SQL Server 的应用程序的支持。要确定是否您未经 WHQL 认证的存储设备支持 I/O 保证了本文中描述的事务数据库和/或专供数据库使用,请检查您的设备供应商。此外,请与您的设备供应商联系,以验证正确部署和配置该设备进行事务性数据库使用。

更多信息

默认情况下,不能在网络文件共享上创建一个 SQL Server 数据库。在映射的数据库文件或 UNC 网络位置创建的任何尝试将生成以下错误消息之一:

错误消息 1
5105"设备激活错误"

错误消息 2
5110"文件文件名是不支持 databasefiles 的网络设备上。

此行为被预期行为。跟踪标记 1807年绕开了检查,并允许您将 SQL Server 配置使用的基于网络的数据库文件。SQL Server 和大多数其他企业数据库系统都使用事务日志和相关的恢复逻辑,以确保在出现系统故障时的事务性数据库一致性或异常关闭。这些恢复协议要求能够直接写入磁盘介质,这样,当操作系统输入/输出 (I/O) 写入请求返回到数据库管理器时,恢复系统被保证写入操作实际已完成,或肯定完成。任何软件或硬件组件未能遵守此协议,可能会导致部分或全部数据丢失或损坏系统崩溃。有关日志记录和恢复协议在 SQL Server 中的这些方面的更多详细信息,请参阅下面 Microsoft 知识库中相应的文章:
230785 SQL Server 7.0 和 SQL Server 2000 中,SQL Server 2005 日志记录和数据存储算法来扩展数据的可靠性
Microsoft 不支持 NAS 或不符合这些写入和写入顺序要求的网络的存储服务器上的 SQL Server 网络数据库文件。

由于网络错误,会降低数据库的完整性,以及可能会影响性能,使用的网络文件共享位置存储数据库,则可能会导致 Microsoft 建议将数据库文件存储在本地磁盘子系统或存储区域网络 (San) 上。

网络连接存储 (NAS) 系统是基于文件的存储系统的客户端将通过网络重定向器的连接使用的网络协议 (如 TCP/IP)。如果访问群集的磁盘资源,需要映射一个共享,或者如果磁盘资源就像是远程服务器通过 UNC 路径 (例如,\\Servername\Sharename),在网络上,然后在默认情况下,磁盘存储系统不支持作为 SQL Server 数据库的位置。

性能问题

SQL Server 中,类似于企业数据库系统,可以带来极大的负载 I/O 子系统。在大多数数据库应用程序、 物理 I/O 配置和调整整体系统性能中扮演着重要角色。有三个主要的 I/O 性能因素,需要考虑:
  • 输入/输出带宽: 聚合带宽,通常以程序可供数据库设备每秒兆字节为单位)
  • I/O 延迟: 通常以毫秒为单位,由数据库系统的 I/O 请求完成 I/O 请求的位置与点之间的延迟,
  • CPU 开销: 主机 CPU 开销,通常以 CPU 微秒,数据库系统完成一个 I/O 的单位
任何这些 I/O 因素可能成为瓶颈,设计一个数据库应用程序的 I/O 系统时,必须考虑所有这些因素。

简单来说,NAS 解决方案使用标准网络重定向程序软件栈、 标准网络接口卡 (NIC) 和标准以太网组件。这种配置的缺点是,所有文件 i/o 操作在网络堆栈处理,并会受到网络本身的带宽限制。这可能会导致性能和数据可靠性问题,特别是要求极高文件 I/O 级别的如 SQL Server) 的程序。由 Microsoft 测试某些 NAS 配置中,在输入/输出吞吐量是大约三分之一 (1/3) 的直接连接在同一台服务器上的存储解决方案。在相同的配置,通过 NAS 设备完成一个 I/O 的 CPU 开销大约两倍时,本地 I/O。随着 NAS 设备和网络基础结构的发展,这些比率还可提高相对于直接连接的存储或 San。此外,如果您的应用程序数据大多缓存在数据库缓冲池中,并且您不会遇到任何所述的 I/O 瓶颈,基于 NAS 系统的性能是可能足够满足您的应用程序。

备份和恢复注意事项

SQL Server 提供了用于备份虚拟设备接口 (VDI)。虚拟设备接口提供用于执行热备份和还原 SQL Server 数据库的备份软件供应商提供高性能、 可扩展且可靠的方法。

备份软件进行操作,通过 VDI 具有特定于 NAS 的特殊支持的 NAS 设备上存储的数据库文件。但是,这会导致大量的额外网络流量在备份和恢复过程。备份期间通过 VDI SQL Server 远程读取的文件,并将数据传递到 SQL Server 计算机正在运行的第三方备份软件。还原操作是类似的。

若要避免额外的网络开销,备份供应商必须提供特定于 NAS 的支持的备份供应商和 NAS 供应商。SQL Server VDI 允许备份软件,以充分利用硬件 (剥离镜像) 或 NAS 设备对 NAS 进行快速的数据库文件的副本的本地支持软件 (-写入时拷贝) 技术。这些技术不仅能避免备份在网络上复制文件的开销,它们还可以极大地减少恢复时间。

备份存储在 NAS 上受到同一 failuresthat 影响数据库文件存储在 NAS 上。Shouldconsider 保护这些备份复制到另一介质来实现。

警告:如果您使用不支持 SQL Server VDI 的 NAS 备份技术,您可能会遇到数据库备份中的损坏。这种日志和数据文件之间破损页或不一致问题,如果它们存储在单独的设备上的 corruptionincludes。SQL Server 可能无法检测到残缺的页或不一致现象直到您恢复数据库并访问损坏的数据。Microsoft 不支持不协调与 SQL Server 的 NAS 备份技术的使用。

备份支持和 NAS 供应商支持的 SQL Server VDI 各不相同。请与您的 NAS 和备份软件供应商的有关 VDI 支持的详细信息。

Microsoft 建议考虑到 consulttheir NAS 供应商,以确保端到端解决方案的设计是供数据库使用的 SQL Server 数据库部署说明 NAS 解决方案的客户。有很多 NAS 供应商的最佳做法指南和为此,请使用经过认证的配置。Microsoft 还建议客户准则及其 I/O 性能,以确保无提到的 I/O 因素以前在其应用程序导致了瓶颈。

后面的文本描述了 Microsoft SQL Server 2005年,Microsoft SQL Server 2000 中,Microsoft SQL Server 7.0 中上的基于网络的数据库文件,而无需跟踪标记 1807年的行为。映射的语法是指通过 NET USE 命令关联的网络路径的驱动器号。UNC 语法引用直接引用了网络路径,如 \\Servername\Sharename。
  • 在 SQL Server 7.0 中,而无需跟踪标记 1807,如果使用与映射创建数据库语句后跟 DISK INIT 兼容语法或 UNC 语法 5105 发生错误。
  • 在 SQL Server 7.0 中,使用跟踪标记 1807,如果您使用映射的语法中,与创建数据库语句后跟 DISK INIT 兼容语法文件创建成功。如果您使用 UNC 语法 DISK INIT,则会发生错误 5105。
  • 在 SQL Server 2005 中,在 SQL Server 2000 中,或在 SQL Server 7.0 中,而无需跟踪标记 1807,如果执行与创建数据库语句映射或 UNC 语法中,SQL Server 7.0 中发生的错误 5105 和 5110 错误发生在 SQL Server 2000年中。
  • 在 SQL Server 2005 中,SQL Server 2000年或 SQL Server 7.0,则使用跟踪标记 1807,通过使用映射的创建数据库语句或 UNC 语法是成功的。
请注意 SQL Serverprovides 支持仅对于非故障转移群集安装的 SQL Server 中使用跟踪标记 1807年的基于网络的文件。故障转移群集的安装的 SQL Server 不能用于基于网络的文件由于 SQL Server 2005 和 SQL Server 2000年要求存储设备被识别并注册 Microsoft 群集服务 (MSCS) 群集管理器。

附加注释

NAS 产品,请与数据库软件的使用不正确或数据库使用与配置不当的 NAS 产品,可能会导致数据丢失,包括整个数据库丢失。如果 NAS 设备或网络软件不完全符合数据保证,如写入排序或直写,然后硬件、 软件或甚至电源故障都可能严重影响数据的完整性。

参考

有关订购或直写 SQL Server 的写的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
234656 使用与 SQL Server 的磁盘驱动器缓存
联机 ; SQL Server 丛书主题:"跟踪标记"
SQL Server 要求系统,以支持 Microsoft SQL Server Always-On 存储解决方案审查计划下所述的保证的传递到稳定的媒体。Fo有关 SQL Server 数据库引擎的输入和输出要求的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
967576 Microsoft SQL Server 数据库引擎的输入/输出要求

属性

文章编号: 304261 - 最后修改: 2014年5月15日 - 修订: 3.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 7.0 标准版
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2014 Standard
  • Microsoft SQL Server 2005 Compact Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Evaluation Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 标准版
  • Microsoft SQL Server 2000 Windows CE Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2012 Analysis Services
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2014 Developer
  • Microsoft SQL Server 2014 Enterprise
  • Microsoft SQL Server 2014 Express
  • Microsoft SQL Server 2014 Web
  • Microsoft SQL Server 2012 Business Intelligence
  • Microsoft SQL Server 2014 Business Intelligence
关键字:?
kbinfo kbmt KB304261 KbMtzh
机器翻译
重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。
点击这里察看该文章的英文版: 304261
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com