❶ 怎樣壓縮資料庫的日誌文件
具體方法有3種。
方法一:
第一步:
backup
log
database_name
with
no_log
或者
backup
log
database_name
with
truncate_only
--
no_log和truncate_only是在這里是同義的,隨便執行哪一句都可以。
第二步:
1.收縮特定資料庫的所有數據和日誌文件,執行:
dbcc
shrinkdatabase
(database_name,[,target_percent])
--
database_name是要收縮的資料庫名稱;target_percent是資料庫收縮後的資料庫文件中所要的剩餘可用空間百分比。
2.收縮一次一個特定資料庫中的數據或日誌文件,執行
dbcc
shrinkfile(file_id,[,target_size])
--
file_id是要收縮的文件的標識
(ID)
號,若要獲得文件
ID,請使用
FILE_ID
函數或在當前資料庫中搜索
sysfiles;target_size是用兆位元組表示的所要的文件大小(用整數表示)。如果沒有指定,dbcc
shrinkfile
將文件大小減少到默認文件大小。兩個dbcc都可以帶上參數notruncate或truncateonly,具體意思查看聯機幫助.
方法二:
第一步:
先備份整個資料庫以備不測
。
第二步:
備份結束後,在Query
Analyzer中執行如下的語句:
exec
sp_detach_db
yourDBName,true
--卸除這個DB在MSsql中的注冊信息
第三步:
到日誌的物理文件所在的目錄中去刪除該日誌文件或者將該日誌文件移出該目錄
第四步:
在Query
Analyzer中執行如下的語句:
exec
sp_attach_single_file_db
yourDBName,'
d:\mssql\data\yourDBName_data.mdf
'
--以單文件的方式注冊該DB,如果成功則MSSQL將自動為這個DB生成一個500K的日誌文件。
方法三:
1.
進入企業管理器,選中資料庫,比如demo
2.
所有任務->分離資料庫
3.
到資料庫文件的存放目錄,將MuOnline_log.LDF文件刪除,以防萬一,你可以拷出去
4.
企業管理器->附加資料庫,選muonline,這個時候你會看見日誌文件這項是一個叉,不要緊,繼續,此時資料庫就會提示你該資料庫無日誌是否創建一個新的,確定就是了。
5.
記得資料庫重新附加後用戶要重新設置一下。
如果以後,不想要它變大:
SQL2000下使用:
在資料庫上點右鍵->屬性->選項->故障恢復-模型-選擇-簡單模型。
或用SQL語句:
alter
database
資料庫名
set
recovery
simple
❷ 資料庫日誌文件過大如何收縮
網頁鏈接我是用這個方法收縮的,可以將日誌收縮到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資料庫如何壓縮
1、首先從開始菜單著手,打開開始菜單欄,在菜單欄上找到我們已經安裝的SQL server 2008,單擊打開它。
❹ sql2008下的鏡像資料庫怎樣做日誌收縮
這個問題我前幾天正好碰上,所以,相關的關鍵點告訴你
**********特別提示:《在操作之前請備份》************:
1、SQL SERVER 2008 的日誌會越來越大,如果是用於生產的,可能會大到可怕,反正我的資料庫,前幾天一看,不到1個月就十多個G的日誌文件。
2、要收縮、清除其實很簡單,關鍵點就一個:先把資料庫的恢復模式從默認的「完整」改為「簡單」。具體做法:對資料庫點 右鍵 -》屬性-》左邊 選擇頁 中 點 「選項」-》找到 「恢復模式」,改成「簡單」。
3、然後對資料庫點 右鍵 -》任務-》收縮 -》文件 -》出來的界面中,文件類型 選 「日誌」,點「確定」鈕-》OK了。
4、再次提示,在操作之前請備份,雖然我在操作中沒有碰上任務問題,但不保證你不出問題。
5、至於日誌文件縮完了,你是否要把它改回「完整」模式,你自個看著辦,我是讓它一直簡單,因為,以我的技術,要真的資料庫崩潰了,有日誌問題也是「然並卵」,反正我是一天自動兩次異盤備份,加每二小時增量備份,最後再加雙機熱備(用軟體實現的,那個軟體據說要賣幾萬一套,具體叫什麼就不說了,省得別人說我打廣告,呵呵)。
6、看了一下微軟的資料庫鏡像實現方案相關的東西,感覺太難了,不靠譜,有興趣你可以去試試。
7、最後,順便說,資料庫的恢復模式的選擇,對當前資料庫的運行應該是沒有什麼影響的,也許對於會用日誌文件進行數據查看和調整的人有用。
❺ mssql2008 如何壓縮資料庫
照著資料庫的壓縮向導執行就行。壓縮的目的是為了減少資料庫中的空白,而不是提高效率,所以不要頻繁的壓縮資料庫,只要在資料庫太大,或是准備備份資料庫的時候,才需要壓縮。
❻ mssql2008如何壓縮資料庫大小,日誌我已經清空了,但是主資料庫還有500多M 請問怎麼把它壓縮到100M
打開圖形界面,右鍵你的資料庫,然後選擇收縮資料庫,然後再選擇收縮資料庫文件,對主文件和日誌文件進行收縮,不要試圖指定文件大小,會影響資料庫性能。
❼ 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步,恢復模式改為完整
❽ SQL2008如何壓縮日誌文件
USE 資料庫
GO
SELECT name AS 資料庫的邏輯文件名 FROM sys.database_files WHERE type_desc='log'
GO
DBCC SHRINKFILE (N'資料庫的邏輯文件名' , 100)
GO
首先要保證資料庫做過日誌備份/資料庫的恢復模式為簡單模式
❾ Sql 2008如何壓縮資料庫及日誌文件
首先將你要將壓縮的資料庫設置為簡單日誌模式(這個就不用說了吧),然後右擊你的資料庫名稱,選擇任務-收縮-文件,即可打開資料庫壓縮窗口,後面的你就會操作了,你可以壓縮到你想到的比例。
❿ 怎樣把資料庫的日誌文件壓縮
具體方法有3種。
方法一:
第一步:
backup log database_name with no_log
或者 backup log database_name with truncate_only
-- no_log和truncate_only是在這里是同義的,隨便執行哪一句都可以。
第二步:
1.收縮特定資料庫的所有數據和日誌文件,執行:
dbcc shrinkdatabase (database_name,[,target_percent])
-- database_name是要收縮的資料庫名稱;target_percent是資料庫收縮後的資料庫文件中所要的剩餘可用空間百分比。
2.收縮一次一個特定資料庫中的數據或日誌文件,執行
dbcc shrinkfile(file_id,[,target_size])
-- file_id是要收縮的文件的標識 (ID) 號,若要獲得文件 ID,請使用 FILE_ID 函數或在當前資料庫中搜索 sysfiles;target_size是用兆位元組表示的所要的文件大小(用整數表示)。如果沒有指定,dbcc shrinkfile 將文件大小減少到默認文件大小。兩個dbcc都可以帶上參數notruncate或truncateonly,具體意思查看聯機幫助.