九九国产视频_亚洲精品国产三级在线观看_很污很黄能把下面看湿的短文_69色视频日韩在线视频

MSSQL2000(2005)數據庫日志清理方式(命令)

[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!

MSSQL數據庫日志清理
日志文件滿而造成SQL數據庫無法寫入文件時,可用兩種方法:
一種方法:清空日志。
1.打開查詢分析器,輸入命令
DUMP TRANSACTION 數據庫名 WITH NO_LOG
2.再打開企業管理器--右鍵你要壓縮的數據庫--所有任務--收縮數據庫--收縮文件--選擇日志文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了。

另一種方法有一定的風險性,因為SQL SERVER的日志文件不是即時寫入數據庫主文件的,如處理不當,會造成數據的損失。
1、備份數據庫(以防萬一)
2、分離數據庫 企業管理器->服務器->數據庫->右鍵->分離數據庫
3、刪除LOG文件
4、附加數據庫 企業管理器->服務器->右鍵->附加數據庫
此法生成新的LOG,大小只有500多K。

另外的幾點建議:

--縮小SQL日志

-- exec 'test'

create proc p_compdb

@dbname sysname, --要壓縮的數據庫名

@bkdatabase bit=1, --因為分離日志的步驟中,可能會損壞數據庫,所以你可以選擇是否自動數據庫

@bkfname nvarchar(260)=' --備份的文件名,如果不指定,自動備份到默認備份目錄,備份文件名為:數據庫名+日期時間

as

--1.清空日志

exec('DUMP TRANSACTION ['+@dbname+'] WITH NO_LOG')

--2.截斷事務日志:

exec('BACKUP LOG ['+@dbname+'] WITH NO_LOG')

--3.收縮數據庫文件(如果不壓縮,數據庫的文件不會減小

exec('DBCC SHRINKDATABASE(['+@dbname+'])')

--4.設置自動收縮

exec('EXEC sp_dboption ''+@dbname+'','autoshrink','TRUE'')

--后面的步驟有一定危險,你可以可以選擇是否應該這些步驟

--5.分離數據庫

if @bkdatabase=1

begin

if isnull(@bkfname,')='

set @bkfname=@dbname+'_'+convert(varchar,getdate(),112)

+replace(convert(varchar,getdate(),108),':',')

select 提示信息='備份數據庫到SQL 默認備份目錄,備份文件名:'+@bkfname

exec('backup database ['+@dbname+'] to disk=''+@bkfname+'')

end

--進行分離處理

create table #t(fname nvarchar(260),type int)

exec('insert into #t select filename,type=status&0x40 from ['+@dbname+']..sysfiles')

exec('sp_detach_db ''+@dbname+'')

--刪除日志文件

declare @fname nvarchar(260),@s varchar(8000)

declare tb cursor local for select fname from #t where type=64

open tb

fetch next from tb into @fname

while @@fetch_status=0

begin

set @s='del "'+rtrim(@fname)+'"'

exec master..xp_cmdshell @s,no_output

fetch next from tb into @fname

end

close tb

deallocate tb

--附加數據庫

set @s='

declare tb cursor local for select fname from #t where type=0

open tb

fetch next from tb into @fname

while @@fetch_status=0

begin

set @s=@s+',''+rtrim(@fname)+''

fetch next from tb into @fname

end

close tb

deallocate tb

exec('sp_attach_single_file_db ''+@dbname+''+@s)

GO

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

如果以后,不想要它變大。
SQL2000下使用:
在數據庫上點右鍵->屬性->選項->故障恢復-模型-選擇-簡單模型。
或用SQL語句:
alter database 數據庫名 set recovery simple

另外,Truncate log on checkpoint(此選項用于SQL7.0,SQL 2000中即故障恢復模型選擇為簡單模型)當執行CHECKPOINT 命令時如果事務日志文件超過其大小的70% 則將其內容清除在開發數據庫時時常將此選項設置為True Auto shrink定期對數據庫進行檢查當數據庫文件或日志文件的未用空間超過其大小的25%時,系統將會自動縮減文件使其未用空間等于25% 當文件大小沒有超過其建立時的初始大小時不會縮減文件縮減后的文件也必須大于或等于其初始大小對事務日志文件的縮減只有在對其作備份時或將Truncate log on checkpoint 選項設為True 時才能進行。

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

具體的操作我還沒有實驗過,如果你要使用請在使用前backup好的你數據庫.

問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信

所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!

支付寶贊助
微信贊助

免責聲明,若由于商用引起版權糾紛,一切責任均由使用者承擔。

您必須遵守我們的協議,如您下載該資源,行為將被視為對《免責聲明》全部內容的認可->聯系老梁投訴資源
LaoLiang.Net部分資源來自互聯網收集,僅供用于學習和交流,請勿用于商業用途。如有侵權、不妥之處,請聯系站長并出示版權證明以便刪除。 敬請諒解! 侵權刪帖/違法舉報/投稿等事物聯系郵箱:service@laoliang.net
意在交流學習,歡迎贊賞評論,如有謬誤,請聯系指正;轉載請注明出處: » MSSQL2000(2005)數據庫日志清理方式(命令)

發表回復

本站承接,網站推廣(SEM,SEO);軟件安裝與調試;服務器或網絡推薦及配置;APP開發與維護;網站開發修改及維護; 各財務軟件安裝調試及注冊服務(金蝶,用友,管家婆,速達,星宇等);同時也有客戶管理系統,人力資源,超市POS,醫藥管理等;

立即查看 了解詳情