使用sqlserver和IIS開發(fā).net B/S程序時,數(shù)據(jù)量逐漸增多,用戶也逐漸增多,那么服務(wù)器的穩(wěn)定性就需要維護(hù)了。數(shù)據(jù)庫如何占用更小內(nèi)存,無用的日志如何瞬間清空?
今天在給一個客戶維護(hù)網(wǎng)站的時候,發(fā)現(xiàn)運(yùn)行了2年的程序,數(shù)據(jù)庫中主表的數(shù)據(jù)已超過70萬條,按理說這樣的數(shù)據(jù)量根本不算多。數(shù)據(jù)庫是Sqlserver2012版本,服務(wù)器是Windows Server 2008。
在遠(yuǎn)程連接過程中,IIS和sqlserver總是打開一會兒自動閃退,打開任務(wù)管理器,發(fā)現(xiàn)IIS進(jìn)程占用幾百M(fèi)B內(nèi)存,數(shù)據(jù)庫進(jìn)程占用了將近600M內(nèi)存。為了讓服務(wù)器穩(wěn)定運(yùn)行IIS和sqlserver 我強(qiáng)制重啟了服務(wù)器。
重啟后,發(fā)現(xiàn)數(shù)據(jù)庫和IIS都能正常打開使用了。數(shù)據(jù)庫的日志文件已經(jīng)有2個多GB,數(shù)據(jù)文件不到200MB。于是開始清空數(shù)據(jù)庫日志:
需要用以下命令:
1 ALTER DATABASE [數(shù)據(jù)庫名稱] SET RECOVERY SIMPLE -- 更改為簡單模式 2 3 DBCC SHRINKDATABASE([數(shù)據(jù)庫名稱]) --壓縮數(shù)據(jù)庫命令