SQL2000清理日誌檔案

2021-06-06 07:35:16 字數 1805 閱讀 5711

--最好備份日誌,以後可通過日誌恢復資料。。。

以下為日誌處理方法

一般不建議做第4,6兩步

第4步不安全,有可能損壞資料庫或丟失資料

第6步如果日誌達到上限,則以後的資料庫處理會失敗,在清理日誌後才能恢復.

--*/

--下面的所有庫名都指你要處理的資料庫的庫名

1.清空日誌

dump

transaction 庫名 with no_log

2.截斷事務日誌:

backup

log 庫名 with no_log

3.收縮資料庫檔案(如果不壓縮,資料庫的檔案不會減小

企業管理器--

右鍵你要壓縮的資料庫--所有任務--收縮資料庫--收縮檔案

--選擇日誌檔案--在收縮方式裡選擇收縮至xxm,這裡會給出乙個允許收縮到的最小m數,直接輸入這個數,確定就可以了

--選擇資料檔案--在收縮方式裡選擇收縮至xxm,這裡會給出乙個允許收縮到的最小m數,直接輸入這個數,確定就可以了

也可以用sql語句來完成 

--收縮資料庫

dbcc shrinkdatabase(庫名)

--收縮指定資料檔案,1是檔案號,可以通過這個語句查詢到:select * from sysfiles

dbcc shrinkfile(1)

4.為了最大化的縮小日誌檔案(如果是sql 7.0,這步只能在查詢分析器中進行)

a.分離資料庫:

企業管理器--

伺服器--資料庫--右鍵--分離資料庫

b.在我的電腦中刪除log檔案

c.附加資料庫:

企業管理器--

伺服器--資料庫--右鍵--附加資料庫

此法將生成新的log,大小只有500多k

或用**: 

下面的示例分離 pubs,然後將 pubs 中的乙個檔案附加到當前伺服器。

a.分離

exec sp_detach_db @dbname='

庫名'b.刪除日誌檔案

c.再附加

exec sp_attach_single_file_db @dbname='

庫名', 

@physname='

c:\program files\microsoft sql server\mssql\data\庫名.mdf

'5.為了以後能自動收縮,做如下設定:

企業管理器--

伺服器--右鍵資料庫--屬性--選項--選擇"自動收縮"

--sql語句設定方式:

exec sp_dboption '

庫名', '

autoshrink

', '

true

'6.如果想以後不讓它日誌增長得太大

企業管理器--

伺服器--右鍵資料庫--屬性--事務日誌

--將檔案增長限制為xm(x是你允許的最大資料檔案大小)

--sql語句的設定方式:

alter

database 庫名 modify file(name=邏輯檔名,maxsize=20)

--清除 sql server 錯誤日誌檔案 存檔

exec sp_cycle_errorlog

sql2005的error一共有6個,從errorlog,errlog.1一直到errorlog.6貌似是7個。。

執行一次exec sp_cycle_errorlog就會產生乙個新的errorlog,然後把errorlog.6給刪掉。就是先進先出(佇列類似的情況)這樣迴圈6次就可以把errorlog都重新整理一遍。老的那個就被刪掉了。 

SQL2000清理日誌檔案

最好備份日誌,以後可通過日誌恢復資料。以下為日誌處理方法 一般不建議做第4,6兩步 第4步不安全,有可能損壞資料庫或丟失資料 第6步如果日誌達到上限,則以後的資料庫處理會失敗,在清理日誌後才能恢復.下面的所有庫名都指你要處理的資料庫的庫名 1.清空日誌 dump transaction 庫名 wit...

SQL2000 日誌壓縮

從企業管理器和程式 兩種方法來介紹ms sql server 2000日誌壓縮的方法,希望對大家有所幫助!1 程式裡面的方法 壓縮資料庫日誌 1 備份日誌 exec backup log dbname with no log 2 截斷事務日誌 exec dump transaction dbname...

Sql清理日誌檔案

我們匯入mr資料時發現磁碟空間不夠用了,導致的結果就是我們的程式很可能會丟擲異常了,我們需要匯入資料的時候進行日誌 問1 匯入資料的時候,是否會造成資料庫的異常?回答問1 沒有問題。不會產生衝突。不過要給日子預留空間,防止被填滿。1.確認m develop 的恢復模式是否為簡單 檢視指令碼如下。se...