如题:我从现场 :先分离数据库,然后删除日志,           然后用数据库备份功能 ,备份一下           具体我记不清了,首次操作,别人指点           好像还附加一下,然后备份的最后得到一个像正常备份数据库后的文件,只不过没有日志问题:现在我要在05上还原这个数据库,请问该如何操作网上看了一些办法,试了试,都有问题看了一篇只有mdf文件的,恢复方法可是我这个是从mdf文件 又 引入进去  又 备份 然后 到公司的 环境上还原它 ,就不可以了 
望高人指点小弟一二。

解决方案 »

  1.   

    右键【数据库】,然后【附加】→找到你的mdf文件,按确定
      

  2.   

    是哪个神xx教你删ldf的?你知道那个东西有多重要不?
      

  3.   

    老大,现在没有mdf文件了,只有备份后的那个文件, 日志很大 ,是在没办法 
      

  4.   

    那就右键【数据库】→还原数据文件→命名你的数据库,然后找到bak文件。再点确定。日志超大是有办法处理的,你直接删除ldf会带来非常严重的后果,解决方法一般就是做日志备份然后收缩日志,也可以看看:
    http://blog.csdn.net/dba_huangzj/article/details/7982945
      

  5.   

    弱弱的问一下,删除了ldf文件有什么严重的后果呢?呵呵
      

  6.   

    1、所有的操作先进入ldf再进入mdf,如果你删除了,里面的【未提交事务】将丢失,这样会影响数据库的安全及数据准确性。
    2、你的所谓的备份是mdf/ldf还是bak?mdf的话用“附加”,bak用还原。
      

  7.   

    还原也是不行,出现如下错误 system.date.sqlClient.sqlError 媒体有两个媒体簇,但只提供了一个,必须提供所有成员错误。
      

  8.   

    bak吧,后面没有 后缀名也,就是按 还原数据库得到的 ,不是mdf。附加也不行滴。
      

  9.   

    你的所谓备份是bak吗?看来你的是多个备份在一个文件里面,或者说你的备份文件不全,如果是这样而你连mdf都没有的话.....那我觉得已经没救了。
      

  10.   

    你还是重新备份一个文件吧。或者到现场先做一次日志备份,记住是日志备份,然后收缩日志文件,再做一次完整备份,记住不要全部都备份到一个文件里面,你要的只是最后一次完整备份,另外备份最好用上后缀名,完整用.bak,差异备份用.dif,日志备份用.trn。这样比较好分辨,最后,没有后缀名的话,你在还原的时候找文件,选择所有文件那个选项。就出来了,备份文件不一定要有后缀名,即使是txt都可以还原。
      

  11.   


    做日志备份前,比如先做一次完整备份,如果已经做过,那么
    1、
    2、
    3、然后运行:我这里是把示例数据库收缩到100M,如果你的库非常大,可以500M一次,多次收缩,不然可能要好几个小时来收缩。USE [AdventureWorks]
    GO
    DBCC SHRINKFILE (N'AdventureWorks_Log' , 100)
    GO4、执行一次完整备份。
    5、你就拿那个完整备份下来就可以了。
      

  12.   

    消息 8985,级别 16,状态 1,第 1 行
    找不到数据库 'houseproperty4' 的文件 'houseproperty4_Log'。
      

  13.   

    問一下,選擇分離detach時,如果還有連線,是不能detach,當選擇clear連接時,未提交的事務應該會被回滾吧.所以當用分離detach應該里面不會有未提交的事務吧.
      

  14.   

    会调用checkpoint把已提交的写入mdf,但是未提交的就会记录下来,以后附加的时候会回滚,这也是为什么不要删ldf的原因之一。删了就没发回滚了。
      

  15.   

    再問一下,如果用戶斷開連接或者強制用戶斷開連接時(detach的執行是不能有用戶連接的),沒有先把未提交的事務先做回滾嗎?
      

  16.   

    那就很大工程咯,简单说一下,ldf里面主要包含已提交事务和未提交事务,已提交的本来可以写入mdf,通常有两种方式:1、日志备份。2、执行checkpoint命令。通过这两种方式,ldf里面已提交事务就写入了mdf,然后ldf里面就有了很多/也可能很少的空余空间,成为可重用空间,如果有新事物,可以重用这部分,而不至于通过扩充ldf来获取新空间。在做了备份或者checkpoint以后,收缩效率就大很多,因为极端情况下ldf里面有大量已提交事务但没写入mdf,你一做了备份,有时候可以空出90%的空间,那么再做收缩,你的ldf就会少很多。但是如果不做备份或者checkpoint,那么已提交事务会占住ldf的空间,你收缩的效果就大打折扣。另外那个收缩文件的语句,你直接用图形化操作吧。语句是没问题的,我是导出来的语句,不是我写的,