我试图使用DBCC SHRINKFILE(db_2.ldf)收缩日志文件,这是日志文件的名称。
每次都会给我带来错误:
8985、16级、状态1、第1行无法在sys.database_files中找到数据库db的文件“FIelD”。该文件要么不存在,要么被删除。
你能建议我怎么做才能修好它吗?
发布于 2010-03-09 16:48:07
文件名应该是逻辑文件名,而不是物理文件名。查看数据库属性,在Files选项卡上查找要收缩的文件的逻辑名称,并使用该名称。
发布于 2010-03-09 16:35:58
您是否正在试图收缩日志的数据库上下文中运行它?在运行DBCC命令之前,确保有正确的USE语句。
发布于 2011-06-06 18:03:00
这里有同样的问题,解决方案是重命名逻辑文件以匹配数据库名。下面是查询逻辑文件名并执行文件重命名的示例:
-- retrieve the logical files for the current db
SELECT [name] AS logical_file FROM sys.database_files df
-- rename the logical file (to match the database name)
ALTER DATABASE YourDB
MODIFY FILE (NAME = 'LogicalFile1', NEWNAME='NewLogicalFile1')
GO
ALTER DATABASE YourDB
MODIFY FILE (NAME = 'LogicalFile2', NEWNAME='NewLogicalFile2')
GO这两个更改的原因是,通常有两个文件与每个数据库相关联,数据文件和日志文件。
https://stackoverflow.com/questions/2410656
复制相似问题