我正在尝试使用 缩小我的日志文件DBCC SHRINKFILE(db_2.ldf)
,这是日志文件的名称
每次都给我错误:
8985,级别 16,状态 1,第 1 行在 sys.database_files 中找不到数据库 db 的文件 'FIelD'。该文件不存在或已被删除。
您能否建议我可以做些什么来解决它。
我正在尝试使用 缩小我的日志文件DBCC SHRINKFILE(db_2.ldf)
,这是日志文件的名称
每次都给我错误:
8985,级别 16,状态 1,第 1 行在 sys.database_files 中找不到数据库 db 的文件 'FIelD'。该文件不存在或已被删除。
您能否建议我可以做些什么来解决它。
文件名应该是逻辑文件名而不是物理文件名。在数据库属性中,在文件选项卡上查找您尝试收缩的文件的逻辑名称,然后使用该名称。
您是否在具有您要缩小的日志的数据库的上下文中运行它?确保USE
在运行 DBCC 命令之前有正确的语句
这里有同样的问题,解决方案是重命名逻辑文件以匹配数据库名称。以下是查询逻辑文件名然后执行文件重命名的示例:
-- 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
两次更改的原因是每个数据库通常有两个文件关联,即数据文件和日志文件。
下面的命令有效。但是我不认为它会减小尺寸。我在运行它之后和之前看到相同的大小。你能告诉我我可能错过了什么吗?
fileid groupid size maxsize growth status perf name filename
2 0 1048 268435456 10 1048642 0 PrimaryLogFileName
谢谢
从 SQL Management Studio 右键单击数据库名称、任务、收缩、数据库 Ctrl+Shift+N(或脚本操作到新查询窗口)
生成以下内容:
使用 [DataBaseName] GO DBCC SHRINKDATABASE(N'DataBaseName' ) GO