用指令碼縮小資料庫日誌

來源:互聯網
上載者:User

  因為客戶使用的資料庫時常因為日誌過大而導致硬碟空間不夠,或者備份出來的檔案太大無法通過郵件傳送。

  閑下有餘,參考SQLSERVER的協助檔案,寫了如下指令碼,可以截斷日誌,以達到縮小檔案的目的。有空大家可以在自己的SQLSERVER上測試下效果哦。。。:)也許對有些情況導致的日誌過大沒有作用,這點可以同各位同仁互相交流下。

--在MASTER資料庫中執行以下指令碼(使用查詢分析器)
declare @dbname varchar(50)
declare temp_cur cursor scroll for select name from sysdatabases
open temp_cur
fetch first from temp_cur into @dbname
while @@fetch_status =0
begin
  exec ('backup log '+@dbname+' with no_log')
  exec ('dbcc shrinkdatabase('+@dbname+')')
  exec ('dbcc checkcatalog ('+@dbname+')')
  exec ('dump transaction '+@dbname+' with no_log')
  fetch next from temp_cur into @dbname
end
close temp_cur
deallocate temp_cur

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.