在 SQL Server 中,tempdb 性能以下列方式进行提高:
-
可能缓存临时表和表变量。缓存允许删除和创建临时对象的操作非常快速地执行,并减少页分配的争用问题。
-
分配页闩锁协议得到改善。从而减少使用的 UP(更新)闩锁数。
-
减少了 tempdb 的日志开销。从而降低了 tempdb 日志文件上的磁盘 I/O 带宽占用。
-
在 tempdb 中分配混合页的算法得到改善。
移动 tempdb 数据和日志文件
数据库选项
下表列出了 tempdb 数据库中每个数据库选项的默认值,以及是否可以修改该选项。若要查看这些选项的当前设置,请使用 sys.databases 目录视图。
|
数据库选项
|
默认值
|
是否可修改
|
|---|
|
ALLOW_SNAPSHOT_ISOLATION
|
OFF
|
是
|
|
ANSI_NULL_DEFAULT
|
OFF
|
是
|
|
ANSI_NULLS
|
OFF
|
是
|
|
ANSI_PADDING
|
OFF
|
是
|
|
ANSI_WARNINGS
|
OFF
|
是
|
|
ARITHABORT
|
OFF
|
是
|
|
AUTO_CLOSE
|
OFF
|
否
|
|
AUTO_CREATE_STATISTICS
|
ON
|
是
|
|
AUTO_SHRINK
|
OFF
|
否
|
|
AUTO_UPDATE_STATISTICS
|
ON
|
是
|
|
AUTO_UPDATE_STATISTICS_ASYNC
|
OFF
|
是
|
|
CHANGE_TRACKING
|
OFF
|
否
|
|
CONCAT_NULL_YIELDS_NULL
|
OFF
|
是
|
|
CURSOR_CLOSE_ON_COMMIT
|
OFF
|
是
|
|
CURSOR_DEFAULT
|
GLOBAL
|
是
|
|
数据库可用性选项
|
ONLINE
MULTI_USER
READ_WRITE
|
否
否
否
|
|
DATE_CORRELATION_OPTIMIZATION
|
OFF
|
是
|
|
DB_CHAINING
|
ON
|
否
|
|
ENCRYPTION
|
OFF
|
否
|
|
NUMERIC_ROUNDABORT
|
OFF
|
是
|
|
PAGE_VERIFY
|
对于新安装的 SQL Server,为 CHECKSUM。
对于升级的 SQL Server,为 NONE。
|
是
|
|
PARAMETERIZATION
|
SIMPLE
|
是
|
|
QUOTED_IDENTIFIER
|
OFF
|
是
|
|
READ_COMMITTED_SNAPSHOT
|
OFF
|
否
|
|
RECOVERY
|
SIMPLE
|
否
|
|
RECURSIVE_TRIGGERS
|
OFF
|
是
|
|
Service Broker 选项
|
ENABLE_BROKER
|
是
|
|
TRUSTWORTHY
|
OFF
|
否
|
有关这些数据库选项的说明,请参阅 ALTER DATABASE SET 选项 (Transact-SQL)。