SQLServer數(shù)據(jù)庫日志已滿如何解決

本篇文章給大家分享的是有關(guān)SQLServer數(shù)據(jù)庫日志已滿如何解決,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)介紹好的網(wǎng)站是理念、設(shè)計(jì)和技術(shù)的結(jié)合。創(chuàng)新互聯(lián)擁有的網(wǎng)站設(shè)計(jì)理念、多方位的設(shè)計(jì)風(fēng)格、經(jīng)驗(yàn)豐富的設(shè)計(jì)團(tuán)隊(duì)。提供PC端+手機(jī)端網(wǎng)站建設(shè),用營銷思維進(jìn)行網(wǎng)站設(shè)計(jì)、采用先進(jìn)技術(shù)開源代碼、注重用戶體驗(yàn)與SEO基礎(chǔ),將技術(shù)與創(chuàng)意整合到網(wǎng)站之中,以契合客戶的方式做到創(chuàng)意性的視覺化效果。

SQLServer數(shù)據(jù)庫日志已滿怎么解決

一、簡單方法

1、右鍵數(shù)據(jù)庫→屬性→選項(xiàng)→故障還原模型→設(shè)為簡單→確定;

2、右鍵數(shù)據(jù)庫→所有任務(wù)→收縮數(shù)據(jù)庫→確定;

3、右鍵數(shù)據(jù)庫→屬性→選項(xiàng)→故障還原模型→設(shè)為大容量日志記錄→確定。

二、復(fù)雜方法

1、清空日志DUMP TRANSACTION 庫名 WITH NO_LOG

2、截?cái)嗍聞?wù)日志BACKUP LOG 數(shù)據(jù)庫名 WITH NO_LOG

3、收縮數(shù)據(jù)庫文件(假如不壓縮,數(shù)據(jù)庫的文件不會減小)企業(yè)管理器--右鍵你要壓縮的數(shù)據(jù)庫--所有任務(wù)--收縮數(shù)據(jù)庫--收縮文件--選擇日志文件--在收縮方式里選擇收縮至XXM,這里會給出一個(gè)允許收縮到的最小M數(shù),直接輸入這個(gè)數(shù),確定就可以了--選擇數(shù)據(jù)文件--在收縮方式里選擇收縮至XXM,這里會給出一個(gè)允許收縮到的最小M數(shù),直接輸入這個(gè)數(shù),確定就可以了也可以用SQL語句來完成--收縮數(shù)據(jù)庫DBCCSHRINKDATABASE(客戶資料)--收縮指定數(shù)據(jù)文件,1是文件號,可以通過這個(gè)語句查詢到:select*fromsysfilesDBCCSHRINKFILE(1)。

4、為了最大化的縮小日志文件(假如是sql7.0,這步只能在查詢分析器中進(jìn)行)a.分離數(shù)據(jù)庫企業(yè)管理器--服務(wù)器--數(shù)據(jù)庫--右鍵--分離數(shù)據(jù)庫b.在我的電腦中刪除LOG文件c.附加數(shù)據(jù)庫企業(yè)管理器--服務(wù)器--數(shù)據(jù)庫--右鍵--附加數(shù)據(jù)庫此法將生成新的LOG,大小只有500多K或用代碼:下面的示例分離pubs,然后將pubs中的一個(gè)文件附加到當(dāng)前服務(wù)器。a.分離EXECsp_detach_db@dbname='pubs'b.刪除日志文件c.再附加EXECsp_attach_single_file_db@dbname='pubs',@physname='c:\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\pubs.mdf'。

5、為了以后能自動(dòng)收縮,做如下設(shè)置企業(yè)管理器--服務(wù)器--右鍵數(shù)據(jù)庫--屬性--選項(xiàng)--選擇"自動(dòng)收縮"--SQL語句設(shè)置方式:EXECsp_dboption'數(shù)據(jù)庫名','autoshrink','TRUE'。

6、假如想以后不讓它日志增長得太大企業(yè)管理器--服務(wù)器--右鍵數(shù)據(jù)庫--屬性--事務(wù)日志--將文件增長限制為xM(x是你允許的最大數(shù)據(jù)文件大小)--SQL語句的設(shè)置方式:alterdatabase數(shù)據(jù)庫名modifyfile(name=邏輯文件名,maxsize=20)。

特別注意:請按步驟進(jìn)行,未進(jìn)行前面的步驟,請不要做后面的步驟,否則可能損壞你的數(shù)據(jù)庫。一般不建議做第4、6兩步,第4步不安全,有可能損壞數(shù)據(jù)庫或丟失數(shù)據(jù),第6步假如日志達(dá)到上限,則以后的數(shù)據(jù)庫處理會失敗,在清理日志后才能恢復(fù)。

SQLServer數(shù)據(jù)庫日志已滿怎么解決

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

一種方法:清空日志。

1.打開查詢分析器,輸入命令DUMPTRANSACTION數(shù)據(jù)庫名WITHNO_LOG

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

另一種方法有一定的風(fēng)險(xiǎn)性,因?yàn)镾QLSERVER的日志文件不是即時(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。

注意:建議使用第一種方法。假如以后,不想要它變大。SQLServer2000下使用:在數(shù)據(jù)庫上點(diǎn)右鍵->屬性->選項(xiàng)->故障恢復(fù)-模型-選擇-簡單模型。

或用SQL語句:

alterdatabase數(shù)據(jù)庫名

setrecoverysimple

以上就是SQLServer數(shù)據(jù)庫日志已滿如何解決,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

新聞標(biāo)題:SQLServer數(shù)據(jù)庫日志已滿如何解決
鏈接URL:http://bm7419.com/article6/gegoog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、微信公眾號、品牌網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站制作、企業(yè)建站、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司