Sql-Server-2008
數據庫的mdf文件的位置
我有一個數據庫
Project
。我的問題是我在哪裡可以找到我的數據庫.mdf
,_log.ldf
以便我可以將我的數據庫轉移給另一個使用者。我正在使用 Microsoft SQL Server 2008 Management Studio我
Ssms.exe
的儲存在此路徑中C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe
有幾種方法可以確定 SQL Server mdf 文件和相關日誌文件的位置。
- 打開企業管理器,右鍵點擊您感興趣的數據庫並選擇屬性。選擇文件部分並滾動到
Path
和FileName
列。- 打開查詢視窗並在下面執行相關查詢並查看該
Physical_Name
列。SQL 2005 或更高版本:
SELECT * FROM sys.database_files
SQL 2000:
SELECT * FROM dbo.sysfiles
- 打開查詢視窗並執行
sp_helpfile
並查看該FileName
列。當然,由於 SQL Server 正在使用這些文件,因此您不應嘗試將這些文件複製到其他位置。
最好的方法是從企業管理器中執行備份,方法是右鍵點擊您感興趣的數據庫並選擇任務 -> 備份。
或者,您可以分離數據庫,複製文件,然後附加。
一旦您擁有在其他地方執行的數據庫副本,第三種選擇是設置日誌傳送或複制。
SQL 2005 及更高版本:以下查詢將為您提供所有數據庫和相關文件的列表:
SELECT sd.NAME ,smf.NAME ,smf.type_desc ,(CAST(smf.size AS FLOAT) * 8096) AS SizeBytes ,(CAST(smf.size AS FLOAT) * 8096) / (1024) AS SizeKB ,(CAST(smf.size AS FLOAT) * 8096) / (1024 * 1024) AS SizeMB ,(CAST(smf.size AS FLOAT) * 8096) / (1024 * 1024 * 1024) AS SizeGB ,smf.physical_name ,sd.log_reuse_wait_desc ,sd.recovery_model_desc ,* FROM sys.databases sd INNER JOIN sys.master_files smf ON sd.database_id = smf.database_id WHERE smf.type_desc IN ( 'ROWS' ,'LOG' ) ORDER BY SizeGB DESC