時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)
參考
壓縮日志及數(shù)據(jù)庫文件大小
/*--注意事項
請按步驟進(jìn)行,未進(jìn)行前面的步驟,請不要做后面的步驟,否則可能損壞你的數(shù)據(jù)庫.
一般情況下不建議做第4,6兩步。
第4步不安全,有可能損壞數(shù)據(jù)庫或丟失數(shù)據(jù)。
第6步如果日志達(dá)到上限,則以后的數(shù)據(jù)庫處理會失敗,在清理日志后才能恢復(fù)。
--*/
--下面的所有庫名都指你要處理的數(shù)據(jù)庫的庫名。
1.清空日志
DUMP TRANSACTION 庫名 WITH NO_LOG
2.截斷事務(wù)日志:
BACKUP LOG 庫名 WITH NO_LOG
3.收縮數(shù)據(jù)庫文件(RU 不壓縮,數(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)
4.為了最大化的縮小日志文件(假如是sql server7.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 中的一個文件附加到當(dāng)前服務(wù)器。
a.分離
EXEC sp_detach_db @dbname = '庫名'
b.刪除日志文件
c.再附加
EXEC sp_attach_single_file_db @dbname = '庫名',
@physname = 'c:Program FilesMicrosoft SQL ServerMSSQLData庫名.mdf'
5.為了將來能自動收縮,需要做下面的設(shè)置:
企業(yè)管理器--服務(wù)器--右鍵數(shù)據(jù)庫--屬性--選項--選擇"自動收縮"
--SQL語句設(shè)置方式:
EXEC sp_dboption '庫名', 'autoshrink', 'TRUE'
6.假如你想以后不讓日志增長得過大
企業(yè)管理器--服務(wù)器--右鍵數(shù)據(jù)庫--屬性--事務(wù)日志
--將文件增長限制為xM(x是你允許的最大數(shù)據(jù)文件大小)
關(guān)鍵詞標(biāo)簽:數(shù)據(jù)庫,文件,收縮,日志
相關(guān)閱讀
熱門文章 SqlServer2005對現(xiàn)有數(shù)據(jù)進(jìn)行分區(qū)具體步驟sql server系統(tǒng)表損壞的解決方法MS-SQL2005服務(wù)器登錄名、角色、數(shù)據(jù)庫用戶Access、SQL Server、Oracle常見應(yīng)用的區(qū)別
人氣排行 如何遠(yuǎn)程備份(還原)SQL2000數(shù)據(jù)庫SQL2000數(shù)據(jù)庫遠(yuǎn)程導(dǎo)入(導(dǎo)出)數(shù)據(jù)配置和注冊O(shè)DBC數(shù)據(jù)源-odbc數(shù)據(jù)源配置教程SQL2000和SQL2005數(shù)據(jù)庫服務(wù)端口查看或修改SQL Server 2005降級到2000的正確操作步驟修改Sql Server唯一約束教程淺談JSP JDBC來連接SQL Server 2005的方法SQL Server創(chuàng)建表語句介紹