我有一个具有文件流的 sql 2008 数据库。不幸的是,我只有 .mdf 和 .ldf 文件。我不再有权访问文件流 .hdr 文件或该目录中的任何内容。
通常,您只需将数据库重新附加到新服务器即可;但 sql server 拒绝这样做。
我收到的错误消息是
无法打开物理文件“c:\”。操作系统错误 2:“2(系统找不到指定的文件。)”。
当我尝试使用 DDL 命令 CREATE DATABASE FOR ATTACH 时出现该错误。
有什么诀窍?
谢谢
我有一个具有文件流的 sql 2008 数据库。不幸的是,我只有 .mdf 和 .ldf 文件。我不再有权访问文件流 .hdr 文件或该目录中的任何内容。
通常,您只需将数据库重新附加到新服务器即可;但 sql server 拒绝这样做。
我收到的错误消息是
无法打开物理文件“c:\”。操作系统错误 2:“2(系统找不到指定的文件。)”。
当我尝试使用 DDL 命令 CREATE DATABASE FOR ATTACH 时出现该错误。
有什么诀窍?
谢谢
在 SQL 2K5 中,我遇到过这种情况。
我创建了一个新的数据库,可以随意命名。使其脱机,进入首选项并相应地附加 .mdf 和 .ldf 文件作为替换。它对我有用几次,但在 SQL 2k8 上不确定。
祝你好运
简短的回答:如果您缺少文件流数据,数据库就会出错。我在阳光下尝试了几乎所有东西,您无法在没有原始 filestream.hdr 文件的情况下附加具有文件流依赖关系的数据库。
您可以让它处于恢复模式,但这不会让您进入表格。我们只关心结构。
幸运的是,我们确实有备份。它位于重新安装服务器后已断开连接的驱动器上。网络家伙被口头打了那个。
有了 .hdr 文件和该目录中的所有其他内容,我们就能够将数据库附加回服务器,而且问题为零。
关键是:如果您使用的是 FILESTREAM,除了所有普通数据文件之外,您还必须获取流数据,否则您无法重新附加。