数据库丢失了ndf文件如何附加成功?

wto527x 2013-08-07 11:54:04
描述:
数据库总共有3个文件 mdf、ndf、ldf,其中ndf放在C盘,mdf、ldf放在D盘
由于前两天数据库软件坏了,当时不知道 还有ndf这个事,于是 还原系统、重装sql server 。

结果附加时才发现这个缺少ndf,数据库软件时 sql server 2008的,已知的有一个 半年前的bak备份文件,可以还原出 一个以前的ndf出来,但是用 这个ndf 去和mdf 匹配的时候 会提示:一个或多个文件不匹配。。。

这个问题 整了好几天,求大牛们指教!
...全文
602 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
dlcyj 2013-08-08
  • 打赏
  • 举报
回复
这种情况下,你找到以前备份中的NDF,也不能正常附加的,因为LDF的日志事务已经改变了。
Cloud_Hero 2013-08-07
  • 打赏
  • 举报
回复
尝试对硬盘数据进行回复看看。
wto527x 2013-08-07
  • 打赏
  • 举报
回复
使用以前的备份还是不太好,主要是半年的数据都没了,这样等于没有做任何处理。 我听说好像可以用编程 通过ado 连接mdf 直接导出其中的数据来,有没有 编程大神知道这种方法? 感激不尽啊~
唐诗三百首 2013-08-07
  • 打赏
  • 举报
回复
找最近的备份出来吧,估计没办法的喔.
Shawn 2013-08-07
  • 打赏
  • 举报
回复
SORRY,对于MDF,NDF文件的内部结构及系统表如何存储这两个文件,及它们和日志文件之间的关系,研究不是太深。帮不了你了
KevinLiu 2013-08-07
  • 打赏
  • 举报
回复
引用 12 楼 wto527x 的回复:
[quote=引用 11 楼 DBA_Huangzj 的回复:] [quote=引用 10 楼 wto527x 的回复:] [quote=引用 8 楼 SmithLiu328 的回复:] 如果你的数据库是企业版并且NDF不是在Primary File Group是可以附加的,参考: http://blog.csdn.net/smithliu328/article/details/9816391
您好,我装的是sql server 2008 数据中心的版本,ps:序列号在网上找的... 请问如何确认 这个ndf 是在primary file group上的呢? [/quote]你创建的时候如果没有指定,默认就在primary上[/quote] 这个数据库不是我创建的,但当时创建的人好像技术不怎么好,我认为极有可能就在primary file group上。 估计要悲剧-_-!! 请问下 有什么免费的软件能直连mdf导出文件?或者 您知道编程方式通过ado 直连接mdf的方式?[/quote] 这个还真不知道,可以问问微软的技术支持。
wto527x 2013-08-07
  • 打赏
  • 举报
回复
引用 11 楼 DBA_Huangzj 的回复:
[quote=引用 10 楼 wto527x 的回复:] [quote=引用 8 楼 SmithLiu328 的回复:] 如果你的数据库是企业版并且NDF不是在Primary File Group是可以附加的,参考: http://blog.csdn.net/smithliu328/article/details/9816391
您好,我装的是sql server 2008 数据中心的版本,ps:序列号在网上找的... 请问如何确认 这个ndf 是在primary file group上的呢? [/quote]你创建的时候如果没有指定,默认就在primary上[/quote] 这个数据库不是我创建的,但当时创建的人好像技术不怎么好,我认为极有可能就在primary file group上。 估计要悲剧-_-!! 请问下 有什么免费的软件能直连mdf导出文件?或者 您知道编程方式通过ado 直连接mdf的方式?
發糞塗牆 2013-08-07
  • 打赏
  • 举报
回复
引用 10 楼 wto527x 的回复:
[quote=引用 8 楼 SmithLiu328 的回复:] 如果你的数据库是企业版并且NDF不是在Primary File Group是可以附加的,参考: http://blog.csdn.net/smithliu328/article/details/9816391
您好,我装的是sql server 2008 数据中心的版本,ps:序列号在网上找的... 请问如何确认 这个ndf 是在primary file group上的呢? [/quote]你创建的时候如果没有指定,默认就在primary上
wto527x 2013-08-07
  • 打赏
  • 举报
回复
引用 8 楼 SmithLiu328 的回复:
如果你的数据库是企业版并且NDF不是在Primary File Group是可以附加的,参考: http://blog.csdn.net/smithliu328/article/details/9816391
您好,我装的是sql server 2008 数据中心的版本,ps:序列号在网上找的... 请问如何确认 这个ndf 是在primary file group上的呢?
wto527x 2013-08-07
  • 打赏
  • 举报
回复
引用 7 楼 wwwwgou 的回复:
如果楼主想重用旧的NDF中的数据,把备份还原一下。手工导出NDF中数据库的数据即可。
您好,我想知道这是什么意思? 现在只是要能确保 mdf文件附加成功就行了,ndf中的数据都可以不要,毕竟损失几天的数据和损失半年的数据比起来还是可以接受的,而通过 还原以前的bak文件,我确实得到了一个ndf文件,但是拿它去和现在的mdf、ldf组合在一起去附加的时候,sql server 报错提示说 一个或多文件未匹配... 怎么都附加不上了。 另外在网上找了很多方法,其中都是要先用 sp_configure 'allow updates',1 获取修改系统表的权限,可是该语句已经在sql server 2005版本后就失效了。
KevinLiu 2013-08-07
  • 打赏
  • 举报
回复
如果你的数据库是企业版并且NDF不是在Primary File Group是可以附加的,参考: http://blog.csdn.net/smithliu328/article/details/9816391
Shawn 2013-08-07
  • 打赏
  • 举报
回复
如果楼主想重用旧的NDF中的数据,把备份还原一下。手工导出NDF中数据库的数据即可。
Shawn 2013-08-07
  • 打赏
  • 举报
回复
如果你的NDF中的所有数据库是FULL模式的话,把旧的备份还原,再靠ldf文件重做数据,理论上是可行的。再无它法。
KevinLiu 2013-08-07
  • 打赏
  • 举报
回复
你创建一个DUMY数据库然后停掉服务,将现在的数据库替换到除NDF之外的数据库,然后启动服务看一下是否可以。
wto527x 2013-08-07
  • 打赏
  • 举报
回复
引用 3 楼 Cloud_Hero 的回复:
尝试对硬盘数据进行回复看看。
尝试过了,花了280,结果还是找不出来 ndf
SQL数据库恢复工具是一款针对SQL 数据库MDF NDF文件被误删除,或者数据库文件所在分区误格式化,客户自行在网上下载的普通数据恢复软件恢复出来的数据库文件无法完成附加,不能被软件使用,提示页撕裂,823错误,通讯中断,无效的文件头等错误,这是因为数据库文件存储不连续,还有部分碎片在硬盘中,而普通软件对此却无能为力,比如数据库0字节,那么这个时候就需要本软件了,全面支持SQL 6 7 2000 2005 2008 2008r2 版本,支持数据库文件直接删除,企业管理器里删除,数据库所在分区被误格式化,数据库变成0字节的恢复。 极佳SQL数据库丢失恢复工具支持 SQL7.0 2000 2005 2008 2008R2 2012 2014 版本数据库丢失、覆盖、误还原、所在分区误格式化、数据库文件被删除、分区改变、磁盘分区损坏等情况下的SQL数据库、MDF文件NDF文件恢复工具。 SQL数据库误删除覆盖丢失恢复工具特点: 可以自定义扇区、自定义文件组、自定义页数、很方便的恢复各种情况下丢失数据库文件,直接显示数据库原始大小及版本号等信息,您可以方便的查看数据库是否可以恢复。 不要放弃一丝希望,如果您没有看到您的数据库文件不代表彻底覆盖完了可能被覆盖的一部分,另一部分还是能恢复出来,需要帮助请在线联系我们,,数据库出现任何问题,建议先联系我们,在我们的建议下,您在自己尝试!将需要的碎片保存出来后打包发给我们即可进行修复操作。 SQL数据库误删除覆盖丢失恢复工具 v5.5更新: 支持 SQL7.0 2000 2005 2008 2008R2 2012 2014 恢复更精确,直接扫描损坏的备份文件查看数据库文件 支持 扫描损坏的备份文件,如果扫描备份文件请将簇大小 选512 即可。(如果扫描磁盘分区 建议簇选4096 即可。) 软件截图
 SQL数据库修复软件 5.1 预览数据版 不支持保存!!!   数据库修复程序 目前支持SQL 7.0 2000 2005 2008 2008R2(32\64)位数据库MDF的修复,修复后将直接附加到SQL上生成新的MDF和LDF 文件。   特点:   对断电 黑客攻击 病毒破坏 数据库异常 置疑 脱机 报错 表打不开 索引及系统表损坏全面支持将其修复。对各类报错(823\不是有效的文件头……)等都可完美修复。   对于SQL数据库 DROP TRUNCATE delete 等命令,支持逆向还原。数据库丢失的,误删除的,数据库所在分区格式化,自己用数据恢复软件恢复出来的数据库可以用本软件查看数据库的数据记录是否完整。如果记录少,或修复报错,说明文件不完整,请联系软件商恢复处理!!   更新:   修复一处BUG 注:程序已保护 ,报毒属于误报,请拉白名单即可 数据库急救成立以来,一直从事各种主流数据库的修复及恢复工作,其中包括 MS SQL,MYSQL,Oracle,Access,Sybase,IBMDB2等20余种数据库。 国内目前最专业的数据库救援站,长期修复研究各数据库的物理结构及逻辑结构,我们的辛勤付出,换来了今日的数据库修复领先技术,长期快速 高效的恢复各种财务数据库 ERP管理数据库。在我们的实际修复案例中,绝大部分数据库故障我们完全可以手工修复其结构,使其立即起死回生!市面上软件修复后的数据库会少很多数据,而手工修复结构的数据库,数据将会很完整!这---就是我们的优势! SQL数据库置疑 SQL数据库损坏 SQL数据库修复软件 SQL数据库0字节 SQL系统表损坏 SQL误删除恢复 SQL 误删除表恢复 我们的修复率在100%,如果您已经尝试多家公司,请不妨再交给我们做,我们已经多次救援过被判‘死刑’的数据库。 技术实力: SQL数据库救援 支持版本 6.5 7.0 2000 2005 2008 2008R2 2012 误删除,误丢失,所在分区误格式化,误GHOST等情况的数据库存储残片恢复组合。 支持版本 6.5 7.0 2000 2005 2008 2008R2 2012 TRUNCATE 表 ;drop表;delete表;数据恢复。无日志情况下,同样可以恢复! 支持版本 6.5 7.0 2000 2005 2008 2008R2 2012 DBCC检测分配及一致性错误,日志报错,系统表报错,文件头报错,823,824等错误修复 时间 10分钟-6小时内!支持分组NDF数据库,支持FILESTREAM 和FileTable。

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧