今天QQ群里一位朋友說,用的win2003+iis6.0系統,運行的asp+access網站,一直都正常著了,昨天用網上那個垃圾清理程序清了一下垃圾,結果就不能運行asp程序了。報錯誤“數據庫連接出錯[代碼:01],請檢查數據庫鏈接文件中的連接字串”。
他執行的清理垃圾代碼為以下批處理文件:
@echo off
echo 正在清除系統垃圾文件,請稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive% ecycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile% ecent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile% ecent\*.*"
echo 清除系統LJ完成!
echo. & pause
經過群里一高手的指點說,問題應該在:
rd /s /q %windir%\temp & md %windir%\temp
這一句上。將臨時文件夾Temp用RD命令刪除,再用MD創建臨時文件夾,這樣會導致權限問題!而如果分區格式是NTFS格式,這樣做,Temp目錄的權限肯定會改變,由于數據庫操作時需要使用Temp目錄作緩存進行數據交換,當權限不足時就出現:“數據庫連接出錯,請檢查連接字串。”的錯誤提示。
解決的辦法為:
\windows 文件夾,右擊點temp文件夾選屬性,選擇安全
users
給這個用戶組特別權限和寫入讀取權限。
這樣問題就解決了!