列出有关 SQL Server 中所有数据库文件的信息

是否可以列出有关 SQL Server 上所有数据库的文件 (MDF/LDF) 的信息?

Is it possible to list information about the files (MDF/LDF) of all databases on an SQL Server?

我想得到一个列表,显示哪个数据库正在使用本地磁盘上的哪些文件.

I'd like to get a list showing which database is using what files on the local disk.

我尝试了什么:

  • exec sp_databases 所有数据库
  • select * from sys.databases 显示了关于每个数据库的大量信息 - 但不幸的是它没有显示每个数据库使用的文件.
  • select * from sys.database_files 显示 master 数据库的 mdf/ldf 文件 - 但不是其他数据库
  • exec sp_databases all databases
  • select * from sys.databases shows a lot of information about each database - but unfortunately it doesn't show the files used by each database.
  • select * from sys.database_files shows the mdf/ldf files of the master database - but not the other databases

推荐答案

您可以使用 sys.master_files.

数据库的每个文件包含一行,如存储在主数据库中数据库.这是一个单一的、系统范围的视图.

Contains a row per file of a database as stored in the master database. This is a single, system-wide view.

相关文章