找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3004|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

MSSQL還原單mdf文件報1813錯誤

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:100029 發(fā)表于 2015-12-22 19:42 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
序:
    MS SQL Server 2008 r2附加無ldf日志的mdf數(shù)據(jù)庫時報1813錯誤。提示數(shù)據(jù)庫被強制分離,無日志不能還原之類的話。

原因:
    原因系統(tǒng)正在執(zhí)行定時作業(yè),沒有主要到多次強制分離了數(shù)據(jù)庫。當(dāng)附加回mdf文件時報錯誤1813。總之都是手賤惹的禍。。。

  解決辦法:
   
    1、首先要備份好mdf文件,如果他沒了經(jīng)理非吃了你不可。都不吐骨頭的。
    2、在數(shù)據(jù)庫中新建一個需要附加同名的數(shù)據(jù)庫。例如【
testdb】
    3、停止SQL Server服務(wù)
    4、找到該數(shù)據(jù)庫所在的文件夾、并刪除testdb_log.ldf與testdb.mdf文件
    5、 把需要附加的數(shù)據(jù)庫【testdb.mdf】文件拷貝到當(dāng)前路徑。
    6、啟動SQL Server服務(wù),通過企業(yè)管理器連接數(shù)據(jù)庫。
    7、此時的1步中新建的數(shù)據(jù)庫地址已經(jīng)指向你需要附加數(shù)據(jù)庫的mdf文件了。但是現(xiàn)在數(shù)據(jù)庫還是無法打開的。
    8、執(zhí)行語句:ALTER DATABASE testdb SET EMERGENCY
9
、執(zhí)行語句:ALTER DATABASE testdb SET SINGLE_USER
    10、
執(zhí)行語句:ALTER DATABASE testdb REBUILD LOG ON (NAME=dbname_log, FILENAME='C:\XXX\dbname_log.ldf')
    其中
FILENAME為你需要新建ldf日志的路徑已經(jīng)ldf文件名稱。運行后會出現(xiàn)一條警告“執(zhí)行后,會有警告信息“警告: 數(shù)據(jù)庫 'xhtyjbbs' 的日志已重新生成。已失去事務(wù)的一致性。RESTORE 鏈已斷開,服務(wù)器不再有以前的日志文件的上下文,因此您需要了解它們的內(nèi)容。應(yīng)運行 DBCC CHECKDB 驗證物理一致性。數(shù)據(jù)庫已置于 dbo-only 模式。在準(zhǔn)備使數(shù)據(jù)庫可用時,需要重置數(shù)據(jù)庫選項,并刪除所有多余的日志文件!”別鳥他。
    11、 DBCC CHECKDB(testdb , REPAIR_ALLOW_DATA_LOSS)     這一步會比較卡,可能會導(dǎo)致界面未響應(yīng)。多等一會。成功后數(shù)據(jù)庫變成了單用戶模式,下面兩步驟修改成多用戶模式。
    12、
ALTER DATABASE testdb SET MULTI_USER
    13、
ALTER DATABASE testdb SET ONLINE

  尾:
    不出意外的話數(shù)據(jù)庫應(yīng)該可以使用。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表