新聞中心
MSSQL是目前應(yīng)用最廣泛的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一。在使用MSSQL數(shù)據(jù)庫(kù)時(shí),隨著業(yè)務(wù)逐漸增長(zhǎng),數(shù)據(jù)庫(kù)日志也會(huì)逐漸變大。當(dāng)數(shù)據(jù)庫(kù)日志達(dá)到一定的大小時(shí),不僅會(huì)影響數(shù)據(jù)庫(kù)的性能,還會(huì)導(dǎo)致數(shù)據(jù)庫(kù)癱瘓。因此,我們需要清空數(shù)據(jù)庫(kù)日志。本文將詳細(xì)介紹MSSQL數(shù)據(jù)庫(kù)日志清空方法。

寧強(qiáng)網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,寧強(qiáng)網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為寧強(qiáng)上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的寧強(qiáng)做網(wǎng)站的公司定做!
1.使用備份清空日志
這是最常見(jiàn)的一種方法,也是最簡(jiǎn)單的方法。我們可以通過(guò)備份日志的方式清空數(shù)據(jù)庫(kù)日志。具體步驟如下:
(1)打開(kāi)SQL Server Management Studio。
(2)連接數(shù)據(jù)庫(kù)。
(3)選擇“管理”-“維護(hù)計(jì)劃”。
(4)在維護(hù)計(jì)劃中,選擇備份數(shù)據(jù)庫(kù)。
(5)選擇備份類型為“完整”。
(6)在“選項(xiàng)”中,選擇備份日志。
(7)設(shè)置備份時(shí)間,并保存設(shè)置。
(8)執(zhí)行備份。
2.使用T-SQL命令清空日志
如果你想手動(dòng)清空MSSQL數(shù)據(jù)庫(kù)日志,可以使用T-SQL命令。具體步驟如下:
(1)打開(kāi)SQL Server Management Studio。
(2)連接數(shù)據(jù)庫(kù)。
(3)在“新建查詢”中,輸入以下命令:
BACKUP LOG databasename WITH TRUNCATE_ON
(4)執(zhí)行命令。
3.使用DBCC SHRINKFILE命令清空日志
DBCC SHRINKFILE命令可以縮小MSSQL數(shù)據(jù)庫(kù)日志文件的大小。具體步驟如下:
(1)打開(kāi)SQL Server Management Studio。
(2)連接數(shù)據(jù)庫(kù)。
(3)在“新建查詢”中,輸入以下命令:
USE databasename
GO
DBCC SHRINKFILE (logfilename_Log, 1)
GO
(4)執(zhí)行命令。
4.使用日志清理向?qū)蹇杖罩?/p>
MSSQL還提供了日志清理向?qū)?,使用它可以清空?shù)據(jù)庫(kù)日志。具體步驟如下:
(1)打開(kāi)SQL Server Management Studio。
(2)連接數(shù)據(jù)庫(kù)。
(3)選擇“管理”-“維護(hù)計(jì)劃”-“日志清除”。
(4)在“日志清除”向?qū)е校O(shè)置要?jiǎng)h除日志的時(shí)間范圍。
(5)保存設(shè)置并執(zhí)行。
以上就是MSSQL數(shù)據(jù)庫(kù)日志清空的方法。備份、T-SQL、DBCC SHRINKFILE以及日志清理向?qū)?,這四種方法都可以清空數(shù)據(jù)庫(kù)日志。據(jù)使用情況而定,選擇適合自己的方法即可。但需要注意的是,在清空日志之前,更好備份一次數(shù)據(jù)庫(kù),以便出現(xiàn)異常時(shí)能夠恢復(fù)數(shù)據(jù)。
相關(guān)問(wèn)題拓展閱讀:
- sql server運(yùn)行中,是否能刪除主數(shù)據(jù)庫(kù)事務(wù)日志文件
sql server運(yùn)行中,是否能刪除主數(shù)據(jù)庫(kù)事務(wù)日志文件
您好,很高興為您解答。
1.清空日志
DUMP
TRANSACTION
庫(kù)名
WITH
NO_LOG
2.截?cái)嗍聞?wù)日志:
BACKUP
LOG
數(shù)據(jù)庫(kù)名
WITH
NO_LOG
3.收縮數(shù)據(jù)庫(kù)文件(如果不壓縮,數(shù)據(jù)庫(kù)的文件不會(huì)減小
企業(yè)管理器–右鍵你要壓縮的數(shù)據(jù)庫(kù)–所有任務(wù)–收縮數(shù)據(jù)庫(kù)–收縮文件
–選擇日志文件–在收縮方式里選擇收縮至XXM,這里會(huì)給出一個(gè)允許收縮到的最小M數(shù),直接輸入這個(gè)數(shù),確定就可以了
–選擇數(shù)據(jù)文件–在收縮方式里選擇收縮至XXM,這里會(huì)給出一個(gè)允許收縮到的最罩轎小M數(shù),直接輸入這個(gè)數(shù),確定就可塌悶手以了
也可以用SQL語(yǔ)句來(lái)完成
–收縮數(shù)據(jù)庫(kù)
DBCC
SHRINKDATABASE(客戶資料)
–收縮指定數(shù)團(tuán)嫌據(jù)文件,1是文件號(hào),可以通過(guò)這個(gè)語(yǔ)句查詢到:select
*
from
sysfiles
DBCC
SHRINKFILE(1)
如若滿意,請(qǐng)點(diǎn)擊右側(cè)【采納答案】,如若還有問(wèn)題,請(qǐng)點(diǎn)擊【追問(wèn)】
希望我的回答對(duì)您有所幫助,望采納!
~
O(∩_∩)O~
在SQL
Server運(yùn)行中,只能“清空”和“收返遲縮”事務(wù)日志文件,不能刪除它。
相關(guān)知識(shí)點(diǎn)延伸:
1、在當(dāng)前的SQL
Server中,事務(wù)日志文件在數(shù)據(jù)庫(kù)運(yùn)行中必需存在。如果是事務(wù)文件過(guò)大,想減少磁盤中用的話,可手拿以清空事務(wù)日志,并收縮事務(wù)日志文件。
2、想刪除數(shù)據(jù)庫(kù)事務(wù)日志文件,只能先“分離”數(shù)據(jù)庫(kù),不過(guò),在附加時(shí)如果數(shù)據(jù)庫(kù)文件的事務(wù)日志文件缺失,將會(huì)在附加時(shí)重建。
3、相關(guān)操作:
a.清空日志
DUMP
TRANSACTION
庫(kù)名
WITH
NO_LOG
b.截?cái)嗍聞?wù)日志:
BACKUP
LOG
數(shù)據(jù)庫(kù)名
WITH
NO_LOG
c.收縮數(shù)據(jù)庫(kù)文件(如果不收縮,數(shù)據(jù)庫(kù)的文件不會(huì)減小
企業(yè)管理器->右鍵你要壓縮的數(shù)據(jù)庫(kù)->所有任務(wù)->收縮數(shù)據(jù)庫(kù)->收縮文件
填畢世搭入收縮數(shù)值,后確定。
具體方法有3種。
方法一:
之一步:
backup
log
database_name
with
no_log
或者
backup
log
database_name
with
truncate_only
—
no_log和truncate_only是在這里衡中是同義的,隨便執(zhí)行哪一句都可以。
第二步:
1.收縮特定數(shù)據(jù)庫(kù)的所有數(shù)據(jù)和日志文件,執(zhí)行:
dbcc
shrinkdatabase
(database_name,)
—
database_name是謹(jǐn)譽(yù)要收縮的數(shù)據(jù)庫(kù)名稱;target_percent是數(shù)據(jù)庫(kù)收縮后的數(shù)據(jù)庫(kù)文件中所要的剩余可用空間百分比。
2.收縮一次一個(gè)特定數(shù)據(jù)庫(kù)中的數(shù)據(jù)或日志文件,執(zhí)行
dbcc
shrinkfile(file_id,)
—
file_id是要收縮的文件的標(biāo)識(shí)
(id)
號(hào),若要獲得文件
id,請(qǐng)使用
file_id
函數(shù)或在當(dāng)前數(shù)據(jù)庫(kù)中搜索
sysfiles;target_size是用兆字節(jié)表示的所要的文件大?。ㄓ谜麛?shù)表示)。如果沒(méi)有指定,dbcc
shrinkfile
將文件大小減少到默認(rèn)文件大小。兩個(gè)dbcc都可以帶上參數(shù)notruncate或truncateonly,具體意思查看聯(lián)機(jī)幫助.
方法二:
之一步:
先備份整個(gè)數(shù)據(jù)庫(kù)以備不測(cè)
。
第二步:
備份結(jié)束后,在query
yzer中執(zhí)行如下的語(yǔ)句:
exec
sp_detach_db
yourdbname,true
–卸除這個(gè)db在mssql中的注冊(cè)信息
第三步:
到日志的物理文件所在的目錄中去刪除該日志文件或者將該日志文件移出該目錄
第四步:
在query
yzer中執(zhí)行如下的語(yǔ)句:
exec
sp_attach_single_file_db
yourdbname,’
d:\mssql\data\yourdbname_data.mdf
‘
–以單文件的方式注冊(cè)該db,如果成功則mssql將自動(dòng)為這個(gè)db生成一個(gè)500k的日志文件。
方法三:
1.
進(jìn)入企業(yè)管理器,選中數(shù)據(jù)庫(kù),比如demo
2.
所有任務(wù)->分離數(shù)據(jù)庫(kù)
3.
到數(shù)據(jù)庫(kù)文件的存放目錄,將muonline_log.ldf文件刪除,以防萬(wàn)一,你可以拷出去
4.
企業(yè)管理器->附加數(shù)據(jù)庫(kù),選muonline,這個(gè)時(shí)候你會(huì)看見(jiàn)日志文件這項(xiàng)是一個(gè)叉,不要緊,繼續(xù),此時(shí)數(shù)據(jù)庫(kù)就會(huì)提示你該數(shù)據(jù)庫(kù)無(wú)日志是否創(chuàng)建一個(gè)新的,確定就是了。
5.
記得數(shù)據(jù)庫(kù)重新附加后用戶要重新設(shè)置一下。
如果以后,不祥攔段想要它變大:
sql2023下使用:
在數(shù)據(jù)庫(kù)上點(diǎn)右鍵->屬性->選項(xiàng)->故障恢復(fù)-模型-選擇-簡(jiǎn)單模型。
或用sql語(yǔ)句:
alter
database
數(shù)據(jù)庫(kù)名
set
recovery
能清空mssql數(shù)據(jù)庫(kù)日志嗎的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于能清空mssql數(shù)據(jù)庫(kù)日志嗎,MSSQL數(shù)據(jù)庫(kù)日志清空方法匯總,sql server運(yùn)行中,是否能刪除主數(shù)據(jù)庫(kù)事務(wù)日志文件的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
名稱欄目:MSSQL數(shù)據(jù)庫(kù)日志清空方法匯總(能清空mssql數(shù)據(jù)庫(kù)日志嗎)
文章來(lái)源:http://fisionsoft.com.cn/article/dphhsii.html


咨詢
建站咨詢
