你曾經(jīng)有在執(zhí)行SQL的時(shí)候,數(shù)據(jù)庫(kù)報(bào)事務(wù)日志已滿,然后執(zhí)行報(bào)錯(cuò)。然后糾結(jié)于怎么刪除數(shù)據(jù)庫(kù)日志,搗鼓半天嗎,現(xiàn)在就提供兩種刪除日志文件的方法,希望能夠幫到你!
閱讀目錄
1.數(shù)據(jù)庫(kù)->右鍵->屬性->選項(xiàng)-恢復(fù)模式->由完成切換成簡(jiǎn)單
2.數(shù)據(jù)庫(kù)->右鍵->任務(wù)->收縮-文件->由完成切換成簡(jiǎn)單->文件類型->日志->將文件收縮到
--日志文件收縮至多少M(fèi) DECLARE @DBLogSise AS INT SET @DBLogSise=0 --查詢出數(shù)據(jù)庫(kù)對(duì)應(yīng)的日志文件名稱 DECLARE @strDBName AS NVARCHAR(500) DECLARE @strLogName AS NVARCHAR(500) DECLARE @strSQL AS VARCHAR(1000) SELECT @strLogName=B.name, @strDBName=A.name FROM master.sys.databases AS A INNER JOIN sys.master_files AS B ON A.database_id = B.database_id WHERE A.database_id=DB_ID() SET @strSQL=' --設(shè)置數(shù)據(jù)庫(kù)恢復(fù)模式為簡(jiǎn)單 ALTER DATABASE ['+@strDBName+'] SET RECOVERY SIMPLE; --收縮日志文件 DBCC SHRINKFILE ('''+@strLogName+''' , '+CONVERT(VARCHAR(20),@DBLogSise)+'); --恢復(fù)數(shù)據(jù)庫(kù)還原模式為完整 ALTER DATABASE ['+@strDBName+'] SET RECOVERY FULL ' exec(@strSQL)
1.在數(shù)據(jù)庫(kù)中執(zhí)行上面的存儲(chǔ)過(guò)程
2.然后再執(zhí)行 EXEC dbo.usp_p_delDBLog @DBLogSise = 0 (收縮至多少M(fèi))
回到頂部示例存儲(chǔ)過(guò)程下載
usp_p_delDBLog.sql
下一篇將為大家?guī)?lái):附加沒有日志文件的數(shù)據(jù)庫(kù)方法
如果,您認(rèn)為閱讀這篇博客讓您有些收獲,不妨點(diǎn)擊一下右下角的【推薦】按鈕。如果,您希望更容易地發(fā)現(xiàn)我的新博客,不妨點(diǎn)擊一下綠色通道的【關(guān)注我】。因?yàn)椋业膶懽鳠崆橐搽x不開您的肯定支持。
感謝您的閱讀,如果您對(duì)我的博客所講述的內(nèi)容有興趣,請(qǐng)繼續(xù)關(guān)注我的后續(xù)博客,我是焰尾迭 。
新聞熱點(diǎn)
疑難解答
圖片精選