当前位置:  开发笔记 > 前端 > 正文

SQL Server tempdb优化提示新服务器?

如何解决《SQLServertempdb优化提示新服务器?》经验,为你挑选了2个好方法。

我计划在新机器上全新安装SQL Server 2005,我必须订购.我知道tempdb调优对SQL Server实例的整体性能非常重要.

我已经读过,最好的做法是创建尽可能多的tempdb文件,就像拥有CPU(或核心?)一样.那是对的吗?是否有其他建议,例如硬盘/ RAID设置配置我应该注意什么?

谢谢!



1> splattne..:

以下是我从各种来源研究自己的内容.

为了优化tempdb性能,请注意物理磁盘配置,文件配置以及数据库内的一些设置.

物理磁盘配置

tempdb应驻留在自己的专用物理磁盘上.这允许它从SQL Server上的其余卷拆分I/O事务.

要将tempdb移动到新磁盘驱动器,请使用ALTER DATABASE.它是执行此操作的关键T-SQL命令.Microsoft在SQL Server 2005联机丛书中提供了一个很好的示例.文章名称是ALTER DATABASE(Transact-SQL),具体部分是'G.将tempdb移动到新位置.'

tempdb是一个非常高写的数据库.因此,RAID 5阵列不适合它.您应该将tempdb 放在RAID 0或RAID 10阵列上,因为它们已针对高写入应用程序进行了优化.如果您可以为tempdb的每个物理数据库文件提供额外的RAID 0或RAID 10阵列,您将获得更高的性能.

数据库文件

服务器中每个CPU核心应该有一个物理文件.因此,如果您有双芯片双核服务器,那么tempdb数据库应该有四个物理数据库文件.添加更多数据库文件时,以相同的初始大小和相同的增长设置配置文件非常重要.这样,SQL Server将尽可能均匀地跨文件写入数据.

数据库文件大小

tempdb数据库的大小可能会影响系统的性能.例如,如果为tempdb定义的大小太小,则每次重新启动SQL Server实例时,可能会将自动增长tempdb的部分系统处理负载用于支持工作负载所需的大小.您可以通过增加tempdb数据和日志文件的大小来避免此开销.

在生产环境中确定tempdb的适当大小取决于许多因素,包括现有工作负载和使用的SQL Server功能.Microsoft建议您通过在SQL Server 测试环境中执行以下任务来分析现有工作负载:

    为tempdb设置自动增长(在测试环境中!).

    执行单个查询或工作负载跟踪文件并监视tempdb空间使用情况.

    执行索引维护操作,例如重建索引和监视tempdb空间.

    使用前面步骤中的空间使用值来预测总工作负载使用情况; 为预计的并发活动调整此值,然后相应地设置tempdb的大小.

tempdb的最小大小建议如下:

   Envir. Size  DB Size (MB)  Log Size (MB)
   -----------  ------------  -------------
   Small                1024            256
   Medium               5120           1024
   Large               10024           2048

数据库设置

您可以通过禁用自动更新统计信息来进一步提高tempdb性能,这将为您的tempdb节省一些工作.您还可以将auto create statistics选项设置为false.

免责声明:应谨慎更改设置.根据您放置在tempdb上的负载类型,更改设置可能会对系统性能产生负面影响.

要获得最佳的tempdb性能,请遵循优化tempdb性能中提供的准则和建议.

如何监控tempdb的使用情况?

出来的tempdb中磁盘空间可能导致显著中断在SQL Server生产环境,并能防止从完成操作运行的应用程序.

您可以使用sys.dm_db_file_space_usage动态管理视图来监视tempdb文件中这些功能使用的磁盘空间.此外,要在会话或任务级别监视tempdb中的页面分配或释放活动,可以使用sys.dm_db_session_space_usagesys.dm_db_task_space_usage动态管理视图.

这些视图可用于标识使用大量tempdb磁盘空间的大型查询,临时表或表变量.还有几个计数器可用于监视tempdb中可用的可用空间以及使用tempdb的资源.

链接:

Microsoft Technet:在SQL Server 2005中使用tempdb

SearchSQLServer.com:SQL Server tempdb最佳实践提高了性能

MSDN库:优化tempdb性能

SearchSQLServer.com:配置SQL Server 2005 TempDB以提高性能

MSDN库:tempdb的容量规划

MSDN库:对tempdb中的磁盘空间不足进行故障排除



2> G Mastros..:

如果我必须选择一个我信任的人来获得有关配置服务器的建议,那就是Denny Cherry.他写了一篇解释这个的文章.

http://searchsqlserver.techtarget.com/tip/0,289483,sid87_gci1307255,00.html


我讨厌那些需要注册才能阅读文章的网站
我无法阅读整篇文章,因为我没有注册该网站,但第一段包含一个常见的误解:"对于标准用户数据库,建议您将每个数据库的物理文件数设置为.25到每个CPU核心一个物理文件." 这仅适用于TempDB,以避免常见的对象分配瓶颈,而不是用户数据库.http://blogs.msdn.com/b/psssql/archive/2007/02/21/sql-server-urban-legends-discussed.aspx
推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有