新聞中心
sqlserver2008和sqlserver2012日志文件過大,有什么方法清理嗎
清理sql server 2008日志步驟如下: 1.將數(shù)據(jù)庫設(shè)置成 簡單 模式選擇要收縮的數(shù)據(jù)庫,點右鍵 屬性-選項,選擇 簡單模式 2.選擇任務(wù)-收縮-文件 3.選擇日志 或者用如下語句 代碼 USE [master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE GO USE DNName GO DBCC SHRINKFILE (N'LogFileName' , 0,TRUNCATEONLY) GO USE [master] GO ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL GO SQL Server 2000要清理日志使用的是dump語句,但是在SQL Server2008里,這個語句不管用了,如果日志文件很大,比如超過1G,就需要截斷一下日志文件以加快sqlserver的運行速度,在SQL Server2008里,方法改為: 有數(shù)據(jù)庫 xxdb 在 SQL Server 2008 下,日志文件已經(jīng)超過1G。 以往使用BACKUP語句-BACKUP LOG xxdb WITH NO_LOG 已經(jīng)失效,在查閱 MSDN 之后發(fā)現(xiàn) MS 提供的標(biāo)準(zhǔn)截斷日志語句已經(jīng)變?yōu)榱?“BACKUP LOG 語句不指定 WITH COPY_ONLY” 使用語句 BACKUP LOG xxdb to disk='x:\work\1.bak' 成功將日志文件備份,并截斷日志文件。這里x:代表你想要備份文件的盤符。 然后使用 DBCC SHRINKFILE (xxdb_log,10) 收縮日志文件到 10M 總結(jié): 完整的收縮日志文件的 T-SQL 語句: BACKUP LOG xxdb to disk='x:\work\1.bak' DBCC SHRINKFILE (xxdb_log,10) GO -- BACKUP LOG db_name to disk='backupfilename' DBCC SHRINKFILE (log_filename,10) GO 里面的x:\work是隨意設(shè)置的。當(dāng)然也可以收縮到比如5M或1M。 在用的: USE[master] GO ALTERDATABASEYHDBSETRECOVERYSIMPLEWITHNO_WAIT GO ALTERDATABASEYHDBSETRECOVERYSIMPLE--簡單模式 GO USEYHDB GO DBCCSHRINKFILE(N'YHDB_log', 11,TRUNCATEONLY) GO USE[master] GO ALTERDATABASEYHDBSETRECOVERYFULLWITHNO_WAIT GO ALTERDATABASEYHDBSETRECOVERYFULL--還原為完全模式 GO
創(chuàng)新互聯(lián)是一家專業(yè)提供巨鹿企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、H5開發(fā)、小程序制作等業(yè)務(wù)。10年已為巨鹿眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
Sqlserver數(shù)據(jù)庫日志太大如何快速刪除
2.截斷事務(wù)日志: BACKUP LOG 數(shù)據(jù)庫名WITH NO_LOG 3.收縮數(shù)據(jù)庫文件(如果不壓縮,數(shù)據(jù)庫的文件不會減小 企業(yè)管理器--右鍵你要壓縮的數(shù)據(jù)庫--所有任務(wù)--收縮數(shù)據(jù)庫--收縮文件 --選擇日志文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數(shù),直接輸入這個數(shù),確定就可以了 --選擇數(shù)據(jù)文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數(shù),直接輸入這個數(shù),確定就可以了 也可以用SQL語句來完成 --收縮數(shù)據(jù)庫 DBCC SHRINKDATABASE(客戶資料) --收縮指定數(shù)據(jù)文件,1是文件號,可以通過這個語句查詢到:select * from sysfiles DBCC SHRINKFILE(1) 代碼如下復(fù)制代碼backup, log, 模式 -- 第一步:清空日志 DUMP TRANSACTION [YZGA] WITH NO_LOG -- 第二步:截斷事務(wù)日志 BACKUP LOG [YZGA] WITH NO_LOG -- 第三步:收縮數(shù)據(jù)庫 盡管可用該選項手動截斷事務(wù)日志,但是我們極力建議您不要這樣做,因為這會將日志鏈斷開。在下一次完整備份或完整差異備份之前,將無法為數(shù)據(jù)庫提供媒體故障保護(hù)。只在非常特殊的情況下才手動截斷日志,并立即創(chuàng)建數(shù)據(jù)備份。 刪除日志方法二1、進(jìn)入企業(yè)管理器,選中數(shù)據(jù)庫,比如it,所有任務(wù)-分離數(shù)據(jù)庫。2、如果數(shù)據(jù)庫正在連接使用,要先點清除,才可以選確定。3、到數(shù)據(jù)庫文件的存放目錄,將it_log.LDF文件刪除,不放心可以先拷到別的地方。4、進(jìn)入企業(yè)管理器,數(shù)據(jù)庫-所有任務(wù)-附加數(shù)據(jù)庫。5、選擇it_Data.MDF,這個時候你會看見日志文件這項是一個紅叉,不要緊點確定。6、此時數(shù)據(jù)庫就會提示你該數(shù)據(jù)庫無日志是否創(chuàng)建一個新的,確定就是了。
SQLServer日志文件太大如何解決
USE[master]
GO
ALTER?DATABASE?數(shù)據(jù)庫名稱?SET?RECOVERY?SIMPLE?WITH?NO_WAIT
GO
ALTER?DATABASE?數(shù)據(jù)庫名稱?SET?RECOVERY?SIMPLE
GO
USE?數(shù)據(jù)庫名稱
GO
DBCC?SHRINKFILE?(N'數(shù)據(jù)庫名稱_log'?,?2,?TRUNCATEONLY)
GO
USE[master]
GO
ALTER?DATABASE?數(shù)據(jù)庫名稱?SET?RECOVERY?FULL?WITH?NO_WAIT
GO
ALTER?DATABASE?數(shù)據(jù)庫名稱?SET?RECOVERY?FULL
ogg for sqlserver 日志暴漲怎么辦
使用簡單恢復(fù)模式,可能造成日志暴漲的原因主要是:
1.當(dāng)前存在活動日志,這個可以使用DBCC OPENTRAN命令查看是否有當(dāng)前活動日志導(dǎo)致日志無法截斷。
2.當(dāng)前庫用于復(fù)制,因為日志需要被復(fù)制的Log Reader進(jìn)程讀取,在讀取之前日志是無法被清理掉的,原因可以通過sys.databases的log_resue_wait列查看到原因。
3.日志之前曾經(jīng)因為大的操作暴漲,忘記收縮,嘗試直接收縮一下日志。
網(wǎng)頁標(biāo)題:sqlserver日志很大,sqlserver數(shù)據(jù)庫日志文件過大
URL鏈接:http://fisionsoft.com.cn/article/hdppjs.html