Error: Can’t create/write to file ‘C:WINDOWSTEMP#sql_718_0.MYD(Errcode: 17)
出現這樣的情況有以下的可能:
1、C:WINDOWSTEMP文件夾權限不夠,至少也要給出USERS組的可讀可寫權限; (給出權限)
2、C:WINDOWSTEMP文件夾的磁盤滿了,文件寫不進去了;(清空TEMP文件夾)
3、你的服務器裝了MCAFEE殺毒軟件,它的訪問保護禁止了TEMP文件可寫;(修改訪問保護設置)
4、還是MCAFEE殺毒軟件的問題,解決步驟:按訪問掃描屬性-所有進程-檢測項-掃描文件(在寫入磁盤時)勾去掉,OK.
5、C:WINDOWSTEMP 清空這個文件夾 或是刪除 #sql_718_0.MYD’
第四種的做法相對來說不夠安全,可以如以下方式來操作:
我所遇到的出問題的主機是win2003sp2+php5.2.5+mysql5.0.24具體處理方法如下
在my.ini中[mysqld]裡面添加一行
tmpdir=”D:/mysqltmp/temp/”
指定創建創建臨時文件的目錄,大量查詢時會用到
重新啟動mysql服務使之生效.
打開McAfee VirusScan控制台->按訪問掃描程序->屬性->所有進程->檢測項->排除項->添加D:mysqltmptemp
排除時間選擇讀取時寫入時.
備注:由於mysql默認的臨時目錄是c:windowstemp,網上流傳的說法是
修改McAfee VirusScan控制台->按訪問掃描程序->屬性->所有進程->檢測項->掃描文件去寫入文件時,我的方法相對要安全些.
至於權限,由於mysql服務默認是系統權限,一般都是系統完全控制的,如果必要,也可給個啟動用戶.