📄 sql server开发技巧-20.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#000000" text="#FFFFFF">
<font color="#00CC00">Tempdb数据库使用技巧 </font><br>
<br>
<br>
<br>
安装SQL Server时安装程序会创建tempdb数据库。Tempdb是SQL Server存储临时表和存储过程的系统数据库,用于排序、子查询、GROUP
BY、ORDER BY、游标等等。Tempdb只包含临时的对象,所以不要在这个数据库里创建永久对象。
<p><br>
SQL Server 6.5 tempdb数据库创建在master数据库设备上,默认为2MB。如果使用大的临时表、包括多个GROUP BY或ORDER
BY的查询、频繁使用大的游标,则需要扩容TEMPDB数据库。要扩容tempdb, 可以先扩容master设备然后扩容tempdb, 也可以创建一个新设备然后再扩容tempdb到这个新设备上。你也可以把tempdb数据库移植到独立的设备上。
</p>
<p>步骤如下: </p>
<p>1. 创建一个适当大小的新设备(例如:tempdb_dev) <br>
2. 去MASTER设备的"Default device"选项(这个选项表示master设备是默认设备) <br>
3. Set "Default device" option for the tempdb_dev device. <br>
4. 从Enterprise Manager (或 sp_configure)设置tempdb到内存(set value to 1) <br>
5. 停止然后重新启动MSSQLServer服务 <br>
6. 从Enterprise Manager (或 sp_configure)设置tempdb不到内存(set value to 0) <br>
7. 停止然后重新启动MSSQLServer服务 <br>
8. 设置你的设备为默认设备 </p>
<p>如果要优化查询速度(如果这个查询包含子查询、GROUP BY、ORDER BY子句), 可以设置tempdb到内存。大多情况下内存是最好的数据缓存,比用于TEMPDB更恰当,所以SQL
Server 7.0不支持这项功能。 </p>
<p><br>
SQL Server 7.0 <br>
SQL Server 7.0没有数据库设备和段, 数据库由两个或以上的WINDOWS文件组成。SQL Server的数据库文件有三种类型: 主数据文件(必需,扩展名.mdf),次要的数据文件(不是必需,扩展名.ndf)和日志文件(必需扩展名.ldf)。
现在决不在相同文件里混合数据和日志信息,每个数据库都有单独的文件。 </p>
<p>安装SQL Server 7.0以后你会在c:\mssql7\data(默认目录)目录发现大小为8MB的tempdb.mdf文件和大小为0.5MB的templog.ldf文件.这两个文件里包含tempdb数据库.
</p>
<p>每次SQL Server启动时重新创建TEMPDB数据库.这个数据库在SQL Server 7.0比在SQL Server 6.5中使用更频繁,因此这个数据库可以以25%-50%的比例增长.在SQL
Server 7.0中没有'tempdb in RAM'选项。Microsoft推荐把tempdb放到一个高速的I/O子系统以得到更好的性能。 </p>
<p>现在tempdb可以自动增长,所以不用把它创建的太大,自动增长为默认设置.每次SQL Server启动时tempdb被重设为默认大小。自动增长会导致性能下降,因此需要为TEMPDB设置合理的大小和合理的增量以避免频繁的自动增长。
<br>
<br>
</p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -