mdf貌似被压缩过了,SQL server2008打不开,怎么办啊?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mdf貌似被压缩过了,SQL server2008打不开,怎么办啊?相关的知识,希望对你有一定的参考价值。

参考技术A 抱歉,实在看不清楚你发的图,能不能只把错误窗口发上来啊。追问

多谢

SQL Server:从 .mdf 导入数据库?

【中文标题】SQL Server:从 .mdf 导入数据库?【英文标题】:SQL Server: Importing database from .mdf? 【发布时间】:2011-05-01 13:48:59 【问题描述】:

我的本​​地机器上有一个 .mdf 文件。

我的本​​地机器上安装了 SQL Server 2008 Express 和 SQL Management Studio 2008 Express。

究竟如何将此 .mdf 文件作为新数据库导入到我的 SQL Server 中?

这似乎是一项极其常见的任务,每天必须在全球范围内执行数千次,而我不知道如何在 Management Studio Express 中完成。

我错过了什么?

【问题讨论】:

【参考方案1】:

如果您没有 LDF 文件,则:

1) 将 MDF 放入C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\

2) 在 ssms 中,转到 Databases -> Attach 并添加 MDF 文件。它不会让你以这种方式添加它,但它会告诉你其中包含的数据库名称。

3) 确保运行 ssms.exe 的用户有权访问此 MDF 文件。

4) 既然您知道了 DbName,请运行

EXEC sp_attach_single_file_db @dbname = 'DbName', 
@physname = N'C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\yourfile.mdf';

参考:https://dba.stackexchange.com/questions/12089/attaching-mdf-without-ldf

【讨论】:

【参考方案2】:

除了上面@daniele3004 发布的答案中提到的步骤外,我必须以管理员身份打开 SSMS,否则会显示主文件是只读错误。

转到开始菜单,导航到 SSMS 链接,右键单击 SSMS 链接,选择以管理员身份运行。然后执行上述步骤。

【讨论】:

【参考方案3】:

见:How to: Attach a Database File to SQL Server Express

通过sqlcmd登录数据库:

sqlcmd -S Server\Instance

然后发出命令:

USE [master]
GO
CREATE DATABASE [database_name] ON 
( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\<database name>.mdf' ),
( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\<database name>.ldf' )
 FOR ATTACH ;
GO

【讨论】:

而且,虽然它与那篇文章(间接)相关,但这里是如何做到的in SSMS。【参考方案4】:

要执行此操作,请参见下图:

下一步是添加 *.mdf 文件,

非常重要,.mdf 文件必须位于 C:......\MSSQL12.SQLEXPRESS\MSSQL\DATA

现在删除日志文件

【讨论】:

【参考方案5】:

打开 SQL Management Studio Express 并登录到要附加数据库的服务器。在“对象资源管理器”窗口中,右键单击“数据库”文件夹并选择“附加...”“附加数据库”窗口将打开;在该窗口中单击“添加...”,然后导航到您的 .MDF 文件并单击“确定”。再次单击“确定”以完成附加数据库,您就完成了。数据库应该可供使用。 最好的问候:)

【讨论】:

就像daniele3004说的:很重要,.mdf文件必须位于C:......\MSSQL12.SQLEXPRESS\MSSQL\DATA @call-me 或者 MDF 所在的文件夹需要对 SQL Server 用户帐户具有写入权限。

以上是关于mdf貌似被压缩过了,SQL server2008打不开,怎么办啊?的主要内容,如果未能解决你的问题,请参考以下文章

sql server2005的master.mdf被压缩了,不能解压,解压时弹出文件应用属性时出错,哪位大神能解决一下呀,谢谢

有没有办法将 SQL Server 2008 mdf 文件转换为 SQL Server Express 版本?

sql server 2008如何导入mdf,ldf文件

将使用 SQL Server Express 2008 创建的 mdf 导入 SQL Server 2005 时出现问题

怎么在SQL Server 2008中还原.mdf数据文件

SQL Server 2008 Express 无法附加 mdf 文件