数据库的mdf文件的位置

22 sql-server-2008

我有一个数据库Project。我的问题是在哪里可以找到我的数据库的.mdf_log.ldf以便我可以将我的数据库转移到另一个用户。我正在使用 Microsoft SQL Server 2008 Management Studio

数据库 f 属性

Ssms.exe的存储在这个路径中

C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe
Run Code Online (Sandbox Code Playgroud)

小智 27

确定 SQL Server mdf 文件和关联日志文件的位置的方法很少。

  1. 打开企业管理器,右键单击您感兴趣的数据库并选择属性。选择“文件”部分并滚动到PathFileName列。

  2. 打开查询窗口并运行下面的相关查询并查看Physical_Name列。

SQL 2005 或更高版本:

SELECT * FROM sys.database_files
Run Code Online (Sandbox Code Playgroud)

SQL 2000:

SELECT * FROM dbo.sysfiles
Run Code Online (Sandbox Code Playgroud)
  1. 打开查询窗口并运行sp_helpfile并查看FileName列。

当然,由于 SQL Server 正在使用这些文件,因此您不应尝试将这些文件复制到其他位置。

最好的方法是从企业管理器中执行备份,方法是右键单击您感兴趣的数据库并选择任务 -> 备份。

或者,您可以分离数据库,复制文件,然后附加。

当您拥有在别处运行的数据库副本后,第三种选择是设置日志传送或复制。


小智 18

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
Run Code Online (Sandbox Code Playgroud)


小智 15

您在正确的对话框中,但错误的选项卡 打开“文件”选项卡,显示所有数据库文件的路径 在此处输入图片说明