有关 sqlserver 中的tempdb数据库

发布时间:2019-08-13编辑:脚本学堂
sql server在连接、排序、计算等操作的过程中将tempdb作为等候区,同时还将它用于版本存储。根据sql server中的用户活动和应用类型,tempdb的性能直接影响用户体验。

  sql server在连接、排序、计算等操作的过程中将tempdb作为等候区,同时还将它用于版本存储。根据sql server中的用户活动和应用类型,tempdb的性能直接影响用户体验。在广泛使用tempdb的工作负荷下,有必要对tempdb的布置和规模进行计划编制,以保证最优的性能。

建议
将tempdb的大小设置到足够大,以确保不需要自动增长。
正确地指定其初始文件的大小也是很重要的,否则服务重启可能会导致tempdb的大小被设置为默认值。

注意:tempdb被一个实例内的所有数据库所共享。

有时,它自身将成为一个资源瓶颈,因此优化其配置以对可用资源实现最佳使用非常重要。达到此目标的一种方法就是要为每个CPU创建单独的数据文件。这样使得CPU循环访问tempdb文件,这样会达到比使用单独数据文件有更好的性能。

建议
为每个CPU或内核(不包括超线程处理器)创建一个tempdb文件。这样有助于达到更好的tempdb性能,尤其是当用户活动在tempdb上为资源密集型时。

tempdb是临时的,只存在于sql server服务运行过程中。
tempdb是一个全局共享资源 ,这就意味着如果一个数据库或应用严重依赖于tempdb,相同实例的其他数据库可能会产生性能问题,而且这种情况不受它们控制。

在进行sql server的性能优化时,tempdb的合理配置,也是一个需要考虑的因素。