September 22, 2011

SQL Server: Find Database File Path

Suppose you want to find out the path where the SQL Server database files(mdf and ldf) are located, using a query. You can use system procedure sp_helpdb and system view sysfiles to obtain this information.

The following methods shows the path of the database files for master database

Method 1 : Use sp_helpdb

EXEC sp_helpdb master

Method 2 : Use sys.sysfiles view

select filename from master.sys.sysfiles


Did you like this post?
kick it on
subscribe via rss subscribe via e-mail
print this post follow me on twitter

About The Author

Madhivanan,an MSc computer Science graduate from Chennai-India, works as a works as a Lead Subject Matter Expert at a company that simplifies BIG data. He started his career as a developer working with Visual Basic 6.0, SQL Server 2000 and Crystal Report 8. As years went by, he started working more on writing queries in SQL Server. He now has good level of knowledge in SQLServer, Oracle, MySQL and PostgreSQL as well. He is also one of the leading posters at and a moderator at His T-sql blog is at



2 Responses to "SQL Server: Find Database File Path"
  1. Vishal said...
    September 22, 2011 at 4:33 AM

    For SQL Server 2005+ you can also use sys.database_files:

    SELECT name, physical_name
    FROM sys.database_files

  2. Suprotim Agarwal said...
    September 22, 2011 at 5:03 AM

    I am not 100% sure but I think sys.sysfiles was either removed or planned to be removed from SQL 2005+ onwards. So yes sys.database_files is a good option.

    For read-only db's in particular, I would recommend trying the master.sys.master_files DMV.


Copyright © 2009-2016 All Rights Reserved for by Suprotim Agarwal | Terms and Conditions