zoukankan      html  css  js  c++  java
  • 附加数据库报错:由于数据库没有完全关闭,无法重新生成日志

    问题简述:

    sharepoint的某个站点对应的数据库日志太大了,想把日志瘦身。于是我把整个数据库分离,然后附加数据库来重新生成日志文件。谁知道在附加的时候,居然报错"附加数据库报错:由于数据库没有完全关闭,无法重新生成日志"

    问题原因:原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。如果事务日志文件被手动删除或者由于硬件或环境问题而丢失,则可能出现此错误。

    处理办法:

    一、把分离之前的日志文件也复制过来一齐附加嘛
    从错误提示看, 应该是你的日志文件中还包括有用的数据, 这些数据还没有正确写回数据文件, 导致附加失败.

    二、这种情况最好能找回之前的日志文件, 如果找不到, 应急的方法是新建一个数据库, 将数据库设置为 offline, 然后用附加失败的数据文件替换掉新建库的数据文件, 然后将数据库设置为应急恢复模式, 这样一般就能读数据了
    ALTER DATABASE DB_name SET EMERGENCY

    数据库可以读之后, 你可以尝试再将其设置为 ONLINE 模式, 如果能成功, 那再 DBCC CHECKDB 一次, 确认没有问题
    如果无法ONLINE, 那么你大概就只好新建库, 然后把应急模式的库的数据导到新建的库了

    特别说明:应该使用压缩(shrinking)的办法来处理。

  • 相关阅读:
    PAT 1088. Rational Arithmetic
    PAT 1087. All Roads Lead to Rome
    PAT 1086. Tree Traversals Again
    PAT 1085. Perfect Sequence
    PAT 1084. Broken Keyboard
    PAT 1083. List Grades
    PAT 1082. Read Number in Chinese
    求最大公因数
    [转载]Latex文件转成pdf后的字体嵌入问题的解决
    [转载]Matlab有用的小工具小技巧
  • 原文地址:https://www.cnblogs.com/mingle/p/1610133.html
Copyright © 2011-2022 走看看