SQLServer日志過大導致還原失敗的解決方案


背景:可能項目運行過久或其他原因(待查)導致LDF日志文件達到了254GB,無法正常還原數據庫。

解決方案:
1).

RESTORE DATABASE MainData
FROM DISK='D:\MainData\MainData_backup_2018_10_16_180012_8601285.bak'
WITH MOVE 'MainData' TO 'D:\MSSQL\MainData.mdf'
,NO_LOG 


2). 
第一步做完後,將會出現一個(Restoring)的數據庫
接着再重建一個新的DB, 比如 baktest_nolog
停掉SQL服務

3). 
將第1步生成的mdf 文件 蓋掉 第二步產生的 mdf 文件
啟動SQL服務

4).執行以下代碼

ALTER DATABASE MainData_Nolog SET EMERGENCY
GO
ALTER DATABASE MainData_Nolog SET SINGLE_USER
GO

-- 重建log
DBCC CHECKDB(MainData_Nolog,'REPAIR_ALLOW_DATA_LOSS')
GO

ALTER DATABASE MainData_Nolog SET MULTI_USER
GO
ALTER DATABASE MainData_Nolog SET ONLINE
GO

 


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM