sqlserver 清空日誌指令碼

2021-08-17 20:28:45 字數 1901 閱讀 4140

--檢視資料庫日誌檔案占用情況

dbcc sqlperf(logspace)  

--清除資料庫

use 資料庫名

alter database 資料庫名set recovery ******

dbcc shrinkdatabase(資料庫名,0)

alter database 資料庫名 set recovery full

在windows中執行sql server命令需使用sqlcmd命令,這個在安裝sql server時會一併安裝。

使用sqlcmd進入互動模式下:

之前使用的命令為:

1

2

3

dumptransactiondatabasenamewithno_log--清空日誌

backup log databasenamewithno_log--截斷事務日誌

dbcc shrinkdatabase(databasename)--收縮資料庫

上述命令需要按照順序執行, 通常比直接使用右鍵選單中的「收縮」命令要快很多。

但是,這個命令在2008的版本下並不能執行,限於sql2005~

sql2008對檔案和日誌管理進行了優化,使用如下命令:先在簡單模式下清除日誌,等清除動作完畢再調回到完全模式

1

2

3

4

5

6

7

8

alterdatabasedatabasenamesetrecovery ******withno_wait

go

alterdatabasedatabasenamesetrecovery ******--簡單模式

go

use databasename

go

dbcc shrinkfile (n'databasename_log', 11, truncateonly)

go

還原為完全模式

1

2

3

4

alterdatabasedatabasenamesetrecoveryfullwithno_wait

go

alterdatabasedatabasenamesetrecoveryfull--還原為完全模式

go

SQLServer日誌清空

壓縮日誌及資料庫檔案大小 特別注意 請按步驟進行,未進行前面的步驟,請不要做後面的步驟 否則可能損壞你的資料庫.一般不建議做第4,6兩步 第4步不安全,有可能損壞資料庫或丟失資料 第6步如果日誌達到上限,則以後的資料庫處理會失敗,在清理日誌後才能恢復.下面的所有庫名都指你要處理的資料庫的庫名 1.清...

SQL Server日誌清空方法

在查詢分析器中順序執行以下三步,其中 databasename 為你的資料庫檔名 1.清空日誌 dump transaction databasename with no log 2.截斷事務日誌 backup log databasename with no log 3.收縮資料庫 dbcc sh...

SQL Server 清空日誌檔案

遇到資料庫清空日誌方面的問題,上網搜了一下,覺得有用收錄下來。原 是 sql2005 backup log dnname with no log 這裡的dnname是你要收縮的資料庫名,自己注意修改下面的資料庫名。godump transaction dnname with no log gouse...