我有一个150GB的分区 我在该卷上也有Microsoft SQL服务器, 问题是我在该卷上有几个不同的数据库, 但我无法缩小日志文件,因为没有剩余空间。
我尝试右击数据库/ tasks / shrink / files&也是数据库。
我收到此错误消息。
Microsoft SQL Server Management Studio
Database' cterm_across'收缩失败。 (Microsoft.SqlServer.Smo)
其他信息:
执行Transact-SQL语句或批处理时发生异常。 (Microsoft.SqlServer.ConnectionInfo)
数据库的事务日志&c; cterm_across'已满。要找出无法重用日志中的空间的原因,请参阅sys.databases中的log_reuse_wait_desc列(Microsoft SQL Server,错误:9002)
我该如何走动呢?
提前谢谢
答案 0 :(得分:2)
这对我有用:
-- Do a Backup of your database - save it anywhere:
BACKUP DATABASE cterm_across TO DISK = N'C:\Temp\cterm_across.bak'
-- Do a Backup of the transaction log - save it anywhere:
BACKUP LOG cterm_across TO DISK = N'C:\Temp\cterm_across.bak'
-- If you want to truncate the transaction log: save the backup on null device:
--BACKUP LOG cterm_across TO DISK='NUL:'
-- Change recovery model to simple for the call of Shrinkfile
ALTER DATABASE cterm_across SET RECOVERY SIMPLE
DBCC SHRINKFILE(logical_name_of_your_logfile)
ALTER DATABASE cterm_across SET RECOVERY FULL
您只需使用正确的逻辑文件名替换logical_name_of_your_logfile。你可以在这里找到它们:右键单击数据库 - 属性 - 文件 - 列Logical Name
...默认情况下像cterm_across_log可能