久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

SQL Server事務(wù)日志意外增大的處理方法

瀏覽:4日期:2023-11-05 15:16:19
事務(wù)日志文件Transaction Log File是用來記錄數(shù)據(jù)庫更新情況的文件,擴(kuò)展名為ldf。

在 SQL Server 7.0 和 SQL Server 2000 中,如果設(shè)置了自動增長功能,事務(wù)日志文件將會自動擴(kuò)展。

一般情況下,在能夠容納兩次事務(wù)日志截?cái)嘀g發(fā)生的最大數(shù)量的事務(wù)時(shí),事務(wù)日志的大小是穩(wěn)定的,事務(wù)日志截?cái)嘤蓹z查點(diǎn)或者事務(wù)日志備份觸發(fā)。

然而,在某些情況下,事務(wù)日志可能會變得非常大,以致用盡空間或變滿。通常,在事務(wù)日志文件占盡可用磁盤空間且不能再擴(kuò)展時(shí),您將收到如下錯誤消息:

Error:9002, Severity:17, State:2

The log file for database '%.*ls' is full.

除了出現(xiàn)此錯誤消息之外,SQL Server 還可能因?yàn)槿鄙偈聞?wù)日志擴(kuò)展空間而將數(shù)據(jù)庫標(biāo)記為 SUSPECT。有關(guān)如何從此情形中恢復(fù)的其他信息,請參見 SQL Server 聯(lián)機(jī)幫助中的“磁盤空間不足”主題。

另外,事務(wù)日志擴(kuò)展可能導(dǎo)致下列情形:

· 非常大的事務(wù)日志文件。

· 事務(wù)可能會失敗并可能開始回滾。

· 事務(wù)可能會用很長時(shí)間才能完成。

· 可能發(fā)生性能問題。

· 可能發(fā)生阻塞現(xiàn)象。

原因

事務(wù)日志擴(kuò)展可能由于以下原因或情形而發(fā)生:

· 未提交的事務(wù)

· 非常大的事務(wù)

· 操作:DBCC DBREINDEX 和 CREATE INDEX

· 在從事務(wù)日志備份還原時(shí)

· 客戶端應(yīng)用程序不處理所有結(jié)果

· 查詢在事務(wù)日志完成擴(kuò)展之前超時(shí),您收到假的“Log Full”錯誤消息

· 未復(fù)制的事務(wù)

解決方法

日志文件滿而造成SQL數(shù)據(jù)庫無法寫入文件時(shí),可用兩種方法:

一種方法:清空日志。

1.打開查詢分析器,輸入命令

DUMP TRANSACTION 數(shù)據(jù)庫名 WITH NO_LOG

2.再打開企業(yè)管理器--右鍵你要壓縮的數(shù)據(jù)庫--所有任務(wù)--收縮數(shù)據(jù)庫--收縮文件--選擇日志文件--在收縮方式里選擇收縮至XXM,這里會給出一個(gè)允許收縮到的最小M數(shù),直接輸入這個(gè)數(shù),確定就可以了。

另一種方法有一定的風(fēng)險(xiǎn)性,因?yàn)镾QL SERVER的日志文件不是即時(shí)寫入數(shù)據(jù)庫主文件的,如處理不當(dāng),會造成數(shù)據(jù)的損失。

1: 刪除LOG

分離數(shù)據(jù)庫 企業(yè)管理器->服務(wù)器->數(shù)據(jù)庫->右鍵->分離數(shù)據(jù)庫

2:刪除LOG文件

附加數(shù)據(jù)庫 企業(yè)管理器->服務(wù)器->數(shù)據(jù)庫->右鍵->附加數(shù)據(jù)庫

此法生成新的LOG,大小只有500多K。

注意:建議使用第一種方法。

如果以后,不想要它變大。

SQL2000下使用:

在數(shù)據(jù)庫上點(diǎn)右鍵->屬性->選項(xiàng)->故障恢復(fù)-模型-選擇-簡單模型。

或用SQL語句:

alter database 數(shù)據(jù)庫名 set recovery simple

另外,數(shù)據(jù)庫屬性有兩個(gè)選項(xiàng),與事務(wù)日志的增長有關(guān):

Truncate log on checkpoint

(此選項(xiàng)用于SQL7.0,SQL 2000中即故障恢復(fù)模型選擇為簡單模型)

當(dāng)執(zhí)行CHECKPOINT 命令時(shí)如果事務(wù)日志文件超過其大小的70% 則將其內(nèi)容清除在開發(fā)數(shù)據(jù)庫時(shí)時(shí)常將此選項(xiàng)設(shè)置為True

Auto shrink

定期對數(shù)據(jù)庫進(jìn)行檢查當(dāng)數(shù)據(jù)庫文件或日志文件的未用空間超過其大小的25%時(shí),系統(tǒng)將會自動縮減文件使其未用空間等于25% 當(dāng)文件大小沒有超過其建立時(shí)的初始大小時(shí)不會縮減文件縮減后的文件也必須大于或等于其初始大小對事務(wù)日志文件的縮減只有在對其作備份時(shí)或?qū)runcate log on checkpoint 選項(xiàng)設(shè)為True 時(shí)才能進(jìn)行。

注意:一般立成建立的數(shù)據(jù)庫默認(rèn)屬性已設(shè)好,但碰到意外情況使數(shù)據(jù)庫屬性被更改,請用戶清空日志后,檢查數(shù)據(jù)庫的以上屬性,以防事務(wù)日志再次充滿。

標(biāo)簽: Sql Server 數(shù)據(jù)庫
主站蜘蛛池模板: 吐鲁番市| 应用必备| 惠水县| 襄垣县| 洮南市| 苍梧县| 鲁甸县| 乌兰察布市| 渝北区| 合山市| 青岛市| 息烽县| 甘洛县| 揭西县| 寿光市| 天镇县| 北辰区| 翁源县| 阳泉市| 炎陵县| 靖宇县| 甘孜县| 东山县| 华亭县| 潢川县| 亚东县| 桦川县| 彰化市| 武强县| 西峡县| 宁德市| 万州区| 临澧县| 湖北省| 望奎县| 祁连县| 秦安县| 云梦县| 资兴市| 迁安市| 油尖旺区|