NDF文件丢失或者损坏是否可以成功附加数据库

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

曾经看到有人遇到过NDF文件损坏或者丢失想要通过MDF直接附加数据库,但是结果是失败。在网上也Google了一下看到很多人问这个问题,答案是不可以的。

 

来自MSDNFORATTACH requires the following:

 

· Alldata files (MDF and NDF) must be available.

· Ifmultiple log files exist, they must all be available.

 

Ifa read/write database has a single log file that is currently unavailable, andif the database wasshutdown with no users or open transactions before the attach operation, FORATTACH automatically rebuilds the log file and updates the primary file. Incontrast, for a read-only database, the log cannot be rebuilt because theprimary file cannot be updated. Therefore, when you attach a read-only databasewhose log is unavailable, you must provide the log files or files in the FORATTACH clause.

 

FORATTACH 具有以下要求:

· 所有数据文件(MDF和 NDF)都必须可用。

· 如果存在多个日志文件,这些文件都必须可用。

如果一个可读/写数据库具有一个当前不可用的日志文件,并且进行附加操作前在没有使用用户或打开的事务的情况下关闭了该数据库,那么 FOR ATTACH 会自动重新生成日志文件并更新主文件。相比之下,对于只读数据库,由于主文件不能更新,将不能重新生成日志。因此,如果附加一个日志不可用的只读数据库,必须在 FOR ATTACH 子句中提供日志文件或文件。

 

还有一个注意事项,很多人遇到Log太大的问题时,网上有人就建议删除Log,然后通过RebuildLog重建,这样就可以马上减少日志的大小。但是这里要有一个前提,数据库要被干净的关闭(没有使用用户或者打开事务)。如果日志文件损坏了,但是里边有Open的事务,也是无法通过RebuildLog成功的。

 

更多信息参考:CREATEDATABASEhttp://msdn.microsoft.com/en-us/library/ms176061(SQL.90).aspx


本文转自 lzf328 51CTO博客,原文链接:http://blog.51cto.com/lzf328/1113015

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
存储 NoSQL MongoDB
MongoDB数据库转换为表格文件的Python实现
MongoDB数据库转换为表格文件的Python实现
178 0
|
2月前
|
存储 数据库
LabVIEW如何修复或重置NI MAX数据库文件
LabVIEW如何修复或重置NI MAX数据库文件
35 0
|
1月前
|
存储 关系型数据库 数据库
回顾数据库的三级模式,为什么比直接存文件表格好?
【6月更文挑战第10天】本文介绍数据库用于解决Excel等文件系统存在的数据冗余、不一致和访问困难等问题。DBMS中的关系有一对一、一对多、多对一和多对多四种类型。键有候选键、超级键、主键、备用键和外键等类型,功能依赖分为平凡和非平凡两种。
24 0
回顾数据库的三级模式,为什么比直接存文件表格好?
|
1月前
|
存储 关系型数据库 MySQL
|
1月前
|
存储 关系型数据库 MySQL
|
1月前
|
SQL XML 数据库
后端数据库开发高级之通过在xml文件中映射实现动态SQL
后端数据库开发高级之通过在xml文件中映射实现动态SQL
27 3
|
1月前
|
SQL XML Java
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
后端数据库开发JDBC编程Mybatis之用基于XML文件的方式映射SQL语句实操
37 3
|
1月前
|
SQL 监控 安全
代码审计-PHP原生开发篇&SQL注入&数据库监控&正则搜索&文件定位&静态分析
代码审计-PHP原生开发篇&SQL注入&数据库监控&正则搜索&文件定位&静态分析
|
1月前
|
存储 关系型数据库 MySQL
关系型数据库mysql日志和临时文件
【6月更文挑战第15天】
39 4
|
1月前
|
SQL Oracle 关系型数据库
关系型数据库直接查看日志文件
【6月更文挑战第10天】
56 3