熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

SQL SERVER數據庫日志清空圖文教程

2013-11-15 14:47:58  來源: SQL Server 

  數據庫日志不停瘋長如何進行清空呢?這裡以一台數據庫SQL SERVER 為例 日志文件達到了多個G一直無法清理想了很多的辦法

  比如下面這款SqlServer日志清除專家可用於SQL Server SQL Server SQL Server 的各種版本的數據庫日志的清除

  這個工具一清就可以清干淨的使您再也不用擔心數據庫日志文件超過幾百兆或上GB級而煩惱

  第二個方法就是采用了一個比較死的辦法采用 分離然後再刪除日志文件再附加來生成一個新的日志文件

  切記在操作前先把SQL好好的備份一下

  第一步 當然還是打開企業管理器了

  SQL SERVER數據庫日志清空圖文教程

  在分離前最好是先把IIS之類的正在連接數據庫的程序關一下要不然老半天也分離不了

  

  也可以選擇一下 刪除鏈接 這樣可能分離會快一點

  我們再定位到數據庫所在的硬盤位置

  

  我們為了保除起見可以把 qqmdf備份一份然後再將 qq_logldf 這個文件重命一下名(G的文件實在是沒地方可以備份)

  然後我們再來附加數據庫

  

  

  附加到剛剛那個 mdf的文件注意看下面會提示 ldf 文件找不到

  

  不管他了選擇 ldf這一分把他給刪掉

  然後再確定哈還原成功了系統自動生成了一個新的 ldf 文件  KB

  建議大家先用上面的那個工具去清一下如果清不到再用這個死辦法來刪除日志

  最後再次提醒各位一定要注意備份噢!!

  SQL 的收縮日志 
由於SQL對文件和日志管理進行了優化所以以下語句在SQL中可以運行但在SQL中已經被取消
(SQL)
Backup Log DNName with no_log
go
dump transaction DNName with no_log
go
USE DNName 
DBCC SHRINKFILE ()
Go

(SQL):
在SQL中清除日志就必須在簡單模式下進行等清除動作完畢再調回到完全模式
USE [master]
    GO
    ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    ALTER DATABASE DNName SET RECOVERY SIMPLE   簡單模式
    GO
    USE DNName 
    GO
    DBCC SHRINKFILE (NDNName_Log   TRUNCATEONLY)
    GO
    USE [master]
    GO

    ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT

    GO

    ALTER DATABASE DNName SET RECOVERY FULL  還原為完全模式

    GO

優點此清除日志所運行消耗的時間短GB的日志在分鐘左右即可清除完畢做完之後做個完全備份在分鐘內
即可完成
缺點 不過此動作最好不要經常使用因為它的運行會帶來系統碎片普通狀態下LOG和DIFF的備份即可截斷日志
此語句使用的恰當環境當系統的日志文件異常增大或者備份LOG時間太長可能影響生產的情況下使用


From:http://tw.wingwit.com/Article/program/SQLServer/201311/22344.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.