sql2008无日志文件附加数据库失败,怎么办

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql2008无日志文件附加数据库失败,怎么办相关的知识,希望对你有一定的参考价值。

附加时,删除Log文件的列表就可以了,如下图:

看懂了图没,删完后,点确定就OK乐。


前提是,这个数据库文件是你的SQL Server支持的版本的数据表的文件(意思就是,同版本的SQL Server上保留或复制出来的。有些差不多的低版本的复制出来的也能附加)。


这也为快速删除LOG文件提供了一个思路,这种方式附加上的数据库,系统会为它重建一个LOG文件(当然重建后,LOG是非常小的)。不过,用这种方法清LOG,建议备份好哦……

参考技术A 您好,很高兴为您解答。

第一步:先建立一个同名数据库,停止SQL SERVER2005,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库

第二步:查询分析器执行,
1234567alter database NEWDBNAME set emergency declare @databasename varchar(255)set @databasename='NEWDBNAME'exec sp_dboption @databasename, N'single', N'true'dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) --将目标数据库置为单用户状态dbcc checkdb(@databasename,REPAIR_REBUILD)exec sp_dboption @databasename, N'single', N'false'

第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码 。

如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

~ O(∩_∩)O~

数据库附加不了是怎么回事 (数据库是2008的)

附加不了的原因:1,权限问题
2,版本问题
3,附加的文件内容损坏
1,如果附加的文件有权限的要求,而你的权限不满足,所以附加失败
2,用的是sql server 2005,附加了2008的数据库文件,当然,这只是其中一种情况
3,损坏了当然附加不了
参考技术A 你的数据库缺少日志文件,后缀名是.ldf的。把这个日志文件一并附加上就没问题了!有问题再讲 参考技术B 拒绝访问的话,你看看是不是这个MDF文件在NTFS分区上面设置了用户权限,而SqlServer的用户不能读取,具体的应该加哪个我不太清楚,你可以尝试给everyone加个读取权限试试,这个没有什么风险。本回答被提问者采纳

以上是关于sql2008无日志文件附加数据库失败,怎么办的主要内容,如果未能解决你的问题,请参考以下文章

数据库附加不了是怎么回事 (数据库是2008的)

SQl server 2010数据库附加文件为只读,修改是出错,怎么办

SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整

SQL Server2008 如何附加没有日志文件ldf的数据库mdf?

sql server 2008附加数据库出错

SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整