【发布时间】:2015-06-15 05:08:12
【问题描述】:
我的数据库丢失了其中一个.ndf 文件并且无法获取数据。有问题的.ndf 文件是上周四添加的,并由一位同事放置在临时存储位置(d'oh!)。由于在创建此 .ndf 之前,此数据库中没有可用的备份。当所讨论的.ndf 是它自己的文件组时,我已经看到了许多类似问题的解决方案,但在这种情况下,它实际上位于一个文件组中,其中包含一个我想尝试从中获取数据的附加文件。我很确定我想做的事情是不可能的,但总有机会对吗?
数据库设置
- 主要:
Data.mdf-200mb - 数据文件组 1:
Data_1.ndf- 2.9gb Data_2.ndf- 64gb(新添加的文件现已丢失 - 我相信它只是预先分配的空间)日志:
Log.ldf- 128mb
当我们今天早上登录 VM(托管在 Azure 中)时,我们收到了来自 Windows 的意外关闭通知(似乎在凌晨 1 点出现断电/关闭),并且我们的应用程序没有访问数据库。查看 SQL Server Management Studio 我可以看到它处于恢复挂起状态。试图使数据库联机导致我出现关于找不到Data_2.ndf 的错误(位于D:\SQL\Data\Data_2.ndf)。
当我访问 D 驱动器(临时存储驱动器)时,我看到了一个美妙的空白 Windows 资源管理器窗口 - 完全空白的驱动器。
我能够将Data_2.ndf 文件设置为脱机并使数据库本身联机,但是由于文件组处于脱机状态,我无法查询任何数据(因为所有表都在数据文件组 1 中)。其他3个文件(mdf, ndf, ldf)都在线。
有没有办法解决这个问题?有什么方法可以从Data_1.ndf 中恢复任何剩余数据,还是完全干杯?
(这是一个仓促搭建的开发服务器,没有备份/恢复策略,因为“Azure 永不崩溃”:))。
(编辑:格式化)
【问题讨论】:
标签: sql-server database sql-server-2014 data-recovery dynamics-nav