SQL Server LDF 文件

SQL Server LDF 文件

有什么方法可以知道 LDF 文件的来源吗?我有一个巨大的 LDF 文件,但我不知道它来自哪个数据库。我找不到任何与 LDF 文件同名的数据库。如果我尝试删除该文件,它会给我一个错误,说另一个程序正在使用该文件。

请帮忙。

干杯。

答案1

运行以下命令,您应该能够找到与该文件关联的数据库。它将列出与您的所有数据库关联的所有文件。

首先在 master 中创建一个临时表:

create table tempsystemfiles (
  fileid smallint,
  groupid smallint,
  size bigint,
  maxsize bigint,
  growth float,
  status int,
  perf int,
  name sysname,
  filename sysname,
  db_name sysname

);

将文件信息插入到新表中:

EXEC sp_Msforeachdb "use [?];insert master.dbo.tempsystemfiles select *,db_name() from sysfiles"

然后只需选择它

select * from master.dbo.tempsystemfiles

哒哒。

答案2

select db_name(database_id) as DBName, * 
from sys.master_files 
where physical_name = 'C:\path to your file\yourlogfile.ldf'

相关内容