sql2008无日志文件附加数据库失败,怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql2008无日志文件附加数据库失败,怎么办相关的知识,希望对你有一定的参考价值。
附加时,删除Log文件的列表就可以了,如下图:
看懂了图没,删完后,点确定就OK乐。
前提是,这个数据库文件是你的SQL Server支持的版本的数据表的文件(意思就是,同版本的SQL Server上保留或复制出来的。有些差不多的低版本的复制出来的也能附加)。
这也为快速删除LOG文件提供了一个思路,这种方式附加上的数据库,系统会为它重建一个LOG文件(当然重建后,LOG是非常小的)。不过,用这种方法清LOG,建议备份好哦……
第一步:先建立一个同名数据库,停止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无日志文件附加数据库失败,怎么办的主要内容,如果未能解决你的问题,请参考以下文章
SQl server 2010数据库附加文件为只读,修改是出错,怎么办
SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整