我在SQL Server 2008 R2上。
根据SQL Server,我的TempDB
看起来像这样:
CREATE DATABASE [tempdb] ON PRIMARY
( NAME = N'tempdev', FILENAME = N'D:\Program Files\Microsoft SQL
Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\tempdb.mdf' , SIZE = 6499584KB , MAXSIZE =
81920000KB , FILEGROWTH = 10%)
LOG ON
( NAME = N'templog', FILENAME = N'T:\Program Files\Microsoft SQL
Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\templog.ldf' , SIZE = 512KB , MAXSIZE =
UNLIMITED, FILEGROWTH = 10%)
GO
哪个好......除了我有2 Tempdb
个文件:Tempdb.mdf
和Tempdb2.mdf
。
我在sys.masterdatafiles
的任何地方都找不到它,我无法在Windows中删除它 - 因为它说Windows正在使用它,当第一个tempdb
文件增长时,它也会,所以我知道SQL Server正在使用它。
如何在SQL Server中找到此文件,以便将其从使用中删除?
答案 0 :(得分:2)
问题解决了:
要回答问题,是的,我已停止并重新启动服务 - 对sys.master_files或其他任何内容都没有明显的改变。
我决定继续尝试继续添加新的tempdb文件。
进入SSMS,添加了tempdb2和tempdb3,点击OK ....
并且SQL回来告诉我tempdb2已经在集合中了。
WTF,我问自己,没有缩写,并尝试了
SELECT *
FROM sys.master_files
WHERE DB_NAME(database_id) = 'tempdb'
...再次
还有一个小小的家伙,一切都是和平的,快乐的。
刷新SSMS中的tempDB对象,右键单击属性,文件列表中有文件,随时可以进行操作。
非常非常奇怪。谢谢你帮我整理一下。