有时候临时数据库的文件太大了,导致所在的驱动器空间不够,需要将之搬家,办法很简单:
- 运行下面的查询记住当前临时数据库相关文件的位置
Select name, physical_NAME FROM sys.master_files WHERE DATABASE_ID=DB_ID('TEMPDB')
- 运行下面的查询后重新启动MSSQLSERVER服务
--达叔傻乐 (darwin.zuo@163.com)
--打开查询分析器或者SSMS(SQL Server Management Studio)连接数据库服务器并新建个查询,
--把这里所有的查询代码都复制到新建的空白查询里,
--然后把下面前两行代码中的对应文件路径改成新的数据库文件的路径再执行该查询然后重新启动MSSQLSERVER服务就可以了
DECLARE @tempDbDataFile NVARCHAR(MAX) = 'E:\TempDB\tempdb.mdf';
DECLARE @tempDbLogFile NVARCHAR(MAX) = 'E:\TempDB\templog.ldf';
Use Master;
DECLARE @cmd1 NVARCHAR(MAX)='Alter Database tempdb Modify File (Name=tempdev, Filename=''' + @tempDbDataFile + ''')';
DECLARE @cmd2 NVARCHAR(MAX)='Alter Database tempdb Modify File (Name=templog, Filename=''' + @tempDbLogFile + ''')';
EXEC sys.sp_executesql @cmd1;
EXEC sys.sp_executesql @cmd2;
Go
- 搬家完成后,到第二步指定的新临时数据库文件位置确认生成了新的临时数据库文件,然后删除第一步查询到的旧临时数据库的文件以腾出它占用的空间。
达叔傻乐(darwin.zuo@163.com)
网友评论