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

SQL Server 壓縮日志及數據庫文件大小

2022-06-13   來源: SQL Server 

  請按步驟進行未進行前面的步驟時請不要做後面的步驟以免損壞你的數據庫

  一般不建議做第兩步步不安全有可能損壞數據庫或丟失數據步如果日志達到上限則以後的數據庫處理會失敗在清理日志後才能恢復

  清空日志

  DUMP TRANSACTION 庫名 WITH NO_LOG

  截斷事務日志

  BACKUP LOG 數據庫名 WITH NO_LOG

  收縮數據庫文件(如果不壓縮數據庫的文件不會減小

  企業管理器右鍵你要壓縮的數據庫所有任務收縮數據庫收縮文件

  選擇日志文件在收縮方式裡選擇收縮至XXM這裡會給出一個允許收縮到的最小M數直接輸入這個數確定就可以了

  選擇數據文件在收縮方式裡選擇收縮至XXM這裡會給出一個允許收縮到的最小M數直接輸入這個數確定就可以了

  也可以用SQL語句來完成

  收縮數據庫

  DBCC SHRINKDATABASE(客戶資料)

  收縮指定數據文件是文件號可以通過這個語句查詢到:

  select * from sysfiles

  DBCC SHRINKFILE()

  為了最大化的縮小日志文件(如果是sql 這步只能在查詢分析器中進行)

  a分離數據庫:

  企業管理器服務器數據庫右鍵分離數據庫

  b在我的電腦中刪除LOG文件

  c附加數據庫:

  企業管理器服務器數據庫右鍵附加數據庫

  此法將生成新的LOG大小只有多K

  或用代碼

  下面的示例分離 pubs然後將 pubs 中的一個文件附加到當前服務器

  a分離

  EXEC sp_detach_db @dbname = pubs

  b刪除日志文件

  c再附加

  EXEC sp_attach_single_file_db @dbname = pubs

  @physname = c:/Program Files/Microsoft

  SQL Server/MSSQL/Data/pubsmdf

  為了以後能自動收縮做如下設置

  企業管理器服務器右鍵數據庫屬性選項選擇自動收縮

  SQL語句設置方式:

  EXEC sp_dboption 數據庫名

  autoshrink TRUE

  如果想以後不讓它日志增長得太大

  企業管理器服務器右鍵數據庫屬性事務日志

  將文件增長限制為xM(x是你允許的最大數據文件大小)

  SQL語句的設置方式:

  alter database 數據庫名 modify file(name=邏輯文件名maxsize=)


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