使用SQL Server管理工具打开mdf文件数据库

28

我如何在SQL Server Management Studio中打开使用Visual Studio 2010创建的数据库的*.mdf文件?

我尝试自己附加它,但由于某些安全原因,我无法导航到该文件。


1
您的计算机上是否安装了 SQL Server 实例? 您不能仅使用 Management Studio“打开” .mdf 文件,而是需要将其附加到数据库引擎,并且通常还需要 .ldf 文件,但是根据您从何处分离它以及它所处的状态,.mdf 文件可能会损坏。建议获取 .bak 文件并将其恢复,而不是处理原始的 .mdf 文件。 - Aaron Bertrand
mdf文件没有损坏。我是使用Visual Studio Express 2010创建的,可以正常工作。我想要的只是使用SQL Server Management Studio对其进行操作。 - user198003
将其附加到本地 SQL Server 实例。如果您使用 Visual Studio 的默认设置,则可能是 .\SQLEXPRESS - Aaron Bertrand
我是一个VS2017用户。我的实例是--(localdb)\MSSqlLocalDb。 - George Beier
5个回答

17

我曾经遇到过同样的问题。

系统配置:单台安装了 Window 7 SP1 服务器和客户端的计算机。

我想要访问 Window 桌面,但是有些答案说我的 Sqlserver 服务没有对该目录的完全访问权限,这是完全正确的。

我通过以下几个简单步骤解决了这个问题:

  1. 进入“所有程序”->“Microsoft SQL Server 2008” -> “配置工具”,然后选择“SQL Server Configuration Manager”。
  2. 选择服务并进入属性设置。在“内置帐户”对话框中选择“本地系统”,然后点击“确定”按钮。

enter image description here

图中的步骤 3 和 4 是演示如何访问文件夹。


您可能需要以管理员身份打开SQL配置管理器才能更改登录。 - Pete
@Pete,用户可以,但我不这么认为。 - rakeshyadvanshi

10
我找到了一篇有关如何在SQL Server Management Studio中打开(附加)MDF文件的详细文章: http://learningsqlserver.wordpress.com/2011/02/13/how-can-i-open-mdf-and-ldf-files-in-sql-server-attach-tutorial-troublshooting/ 我也遇到了无法导航到该文件的问题。原因很可能是这样:
引起它无法“打开”文件夹的原因是运行SQL Server Engine服务的服务帐户对相关文件夹没有读取权限。为该SQL Server实例分配Windows用户组以在WINDOWS级别上拥有读取和列出内容的权限。然后,您就可以在文件夹内看到要附加的文件了。
(来源:http://social.msdn.microsoft.com/Forums/sqlserver/en-US/c80d8e6a-4665-4be8-b9f5-37eaaa677226/cannot-navigate-to-some-folders-when-attempting-to-attach-mdf-files-to-database-in-management?forum=sqlkjmanageability
这个问题的一个解决方案在这里描述:http://technet.microsoft.com/en-us/library/jj219062.aspx。我还没有自己尝试过。一旦我尝试了,我就会更新答案。
希望这能有所帮助。

(对于每个服务SID的数据库引擎,请使用NT SERVICE \ MSSQLSERVER作为默认实例,或使用NT SERVICE \ MSSQL $ InstanceName作为命名实例。) - Stephen Oberauer

7
将文件复制到默认的其他数据库文件目录中。要找出它是什么,您可以在SSMS中使用sp_helpfile过程。在我的机器上,它是:C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA。将文件复制到此目录,它们会自动应用权限,以使连接成功。以下是一个非常好的解释: 如何打开MDF文件。

请注意,当文件在断点处生成和创建时,由于另一个进程正在使用它,该文件将无法访问。 - FanaticD

4

我不知道旧版本如何,但对于SSMS 2016,您可以进入对象资源管理器并右键单击数据库条目。然后在上下文菜单中选择附加...。在这里,您可以浏览到.mdf文件并打开它。 屏幕截图


1
我不知道上面的链接是否包含了这个答案,但是我刚刚以管理员身份运行了SQL管理工具,它起作用了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接