當前位置:首頁 » 編程語言 » sql日誌怎麼收縮
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql日誌怎麼收縮

發布時間: 2023-07-28 00:58:24

sql收縮資料庫日誌的幾種辦法

在SQL Server 2000/2005中可以快速壓縮日誌log文件,通過SQL,

方法一:

--BigData為資料庫名
DUMPTRANSACTIONBigDataWITHNO_LOG
BACKUPLOGBigDataWITHNO_LOG
DBCCSHRINKDATABASE(BigData)

執行以上語句可以快速壓縮日誌文件到1M。

但是以上語句中前兩行在SQL Server 2008下無法執行 ,

第一行提示「Incorrect syntax near the keyword 'TRANSACTION'.」

第二行提示「One or more of the options (no_log) are not supported for this statement. Review the documentation for supported options. 」

第三行可以執行。但日誌log文件沒有任何變化。

原來SQL Server 2008已經不再支持DUMPTRANSACTION和BACKUP LOG WITH NO_LOG,

sql Server 2005說明中明確:包含 DUMP 語句是為了向後兼容。而 後續版本的 Microsoft SQL Server 將刪除該功能。請避免在新的開發工作中使用該功能,並著手修改當前還在使用該功能的應用程序。 使用 BACKUP。

SQL Server 2008說明:BACKUP LOG WITH NO_LOG 和 WITH TRUNCATE_ONLY 選項已廢止。使用完整恢復模式或大容量日誌恢復模式時,如果必須刪除資料庫中的日誌備份鏈,請切換至簡單恢復模式。有關詳細信息,請參閱有關從完整恢復模式或大容量日誌恢復模式切換的注意事項。

方法二:

useDB_NAME
sp_dboptionDB_NAME,"trunc.logonchkpt.",true
checkpoint
sp_dboptionDB_NAME,"autoshrink",true

方法三:(請提前備份文件!!)

  1. Detach資料庫。

  2. 刪除log文件。

  3. 附加資料庫,選移除log文件,此時SQL Server 會自動重新建立一個512K 的Log 文件。

方法四:

USEBigData;
GO
BACKUPLOGDATABASENAMETODISK='d: est.bak'
--.
DBCCSHRINKFILE(Bigdata_Log,1);
GO

Ⅱ sql2008中如何收縮資料庫日誌文件

打開企業管理器SQL ServerManagement Studio,先備份資料庫,然後有兩個方法壓縮資料庫日誌文件:

方法一、

選擇資料庫,新建查詢,順序輸入語句並執行

1、ALTER DATABASE database_name SET RECOVERY SIMPLE

DBCC SHRINKDATABASE(database_name, 0)

2、ALTER DATABASE database_name SET RECOVERY FULL

方法二、

1、選擇資料庫

2、右鍵資料庫選屬性=》選項,將恢復模式改為簡單,確定

3、右鍵資料庫選任務=》收縮=》文件,文件類型選日誌,確定

4、回到第2步,恢復模式改為完整

Ⅲ sql 資料庫中WWALMDB_LOG太大,如何縮減

收縮數據或日誌文件

1.在對象資源管理器中,連接到 SQL Server 資料庫引擎實例,然後展開該實例。

2.展開「資料庫」,再右鍵單擊要收縮的資料庫。

3.依次指向「任務」和「收縮」,再單擊「文件」。

4.選擇文件類型和文件名。

5.根據需要,選中「釋放未使用的空間」復選框。
選中此選項後,將為操作系統釋放文件中所有未使用的空間,並將文件收縮到上次分配的區。這將減小文件的大小,但不移動任何數據。

6.根據需要,可以選中「在釋放未使用的空間前重新組織文件」復選框。如果選中此選項,則必須指定「將文件收縮到」值。默認情況下,該選項為清除狀態。
選中此選項後,將為操作系統釋放文件中所有未使用的空間,並嘗試將行重新定位到未分配頁。

7.根據需要,輸入在收縮資料庫後資料庫文件中要保留的最大可用空間百分比。值可以介於 0 和 99 之間。只有啟用「在釋放未使用的空間前重新組織文件」以後,此選項才可用。

8.根據需要,選中「通過將數據遷移到同一文件組中的其他文件來清空文件」復選框。
選中此選項後,將指定文件中的所有數據移至同一文件組中的其他文件中。然後就可以刪除空文件。此選項與執行包含 EMPTYFILE 選項 DBCC SHRINKFILE 相同。

9.單擊「確定」。

Ⅳ 資料庫日誌文件過大如何收縮

網頁鏈接我是用這個方法收縮的,可以將日誌收縮到1MB

守得雲開見月明,花了一個上午結合前輩的博客,終於弄好了sqlserver2008的資料庫日誌收縮到1MB,分享給大家

# 方法步驟

1、執行SQL語句改成「簡單模式」

2、收縮資料庫

3、執行SQL語句改回「完全模式」

## 第一步:執行SQL語句改成「簡單模式」


USE [master]
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名) SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名) SET RECOVERY SIMPLE --改成簡單模式
GO

## 第二步:進行資料庫操作
相關界面截圖和操作
假定:
資料庫名:SlowXWebDB
日誌文件名:SlowXWebDB_Log

## 第三步:執行SQL語句改成「完全模式」

USE [master]
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名)SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE datebaseName(改成你需要進行收縮的資料庫名)SET RECOVERY FULL --還原為完全模式
GO
==最後不要忘記實測下資料庫是否能夠正常使用==

網頁鏈接

Ⅳ 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/pubs mdf

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

企業管理器 伺服器 右鍵資料庫 屬性 選項 選擇 自動收縮

SQL語句設置方式:

EXEC sp_dboption 資料庫名

autoshrink TRUE

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

企業管理器 伺服器 右鍵資料庫 屬性 事務日誌

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

SQL語句的設置方式:

lishixin/Article/program/SQLServer/201311/22266

Ⅵ SQL server資料庫日誌滿了怎麼處理

一、刪除日誌文件。

二、手動收縮。操作如下:

1、在資料庫頁面中選擇「選項」;

Ⅶ sql server怎麼收縮日誌

一、確認恢復模式。以下是使用 SQL Server Management Studio 檢查資料庫的恢復模式。