解決MYSQL出現(xiàn)Can't create/write to file '/tmp/#sql_5c0_0.MYD'的問(wèn)題
今天我上網(wǎng)站的管理后臺(tái),登錄時(shí)提示
MySQL error:Can't create/write to file '#sql_5c0_0.MYD'
MySQL server error:
Can't create/write to file 'C:/WINDOWS/TEMP/#sql_a80_0.MYD' (Errcode: 17) ( 1 )
根據(jù)從網(wǎng)上搜索問(wèn)題提示和自己遇到的情況分析、解決辦法如下:
說(shuō)明:
出現(xiàn)這個(gè)問(wèn)題是由于服務(wù)器環(huán)境不允許執(zhí)行數(shù)據(jù)庫(kù)校驗(yàn),無(wú)法進(jìn)行此操作。
Can't create/write to file 這個(gè)問(wèn)題,是由于mysql默認(rèn)配置得緩存目錄默認(rèn)是/tmp導(dǎo)致得,解決方案就是手動(dòng)創(chuàng)建一個(gè)目錄,設(shè)置好權(quán)限后,修改配置/etc/my.cnf 或my.ini,添加tmpdir=/data/mysql_data/tmp ,設(shè)定我們指定的緩存目錄,然后重啟mysql即可解決問(wèn)題。
解決思路和原因:
1、權(quán)限問(wèn)題 C:/WINDOWS/TEMP文件夾權(quán)限不夠,最少要給出USERS組的可讀可寫權(quán)限、要不就給everyone權(quán)限也可以;
2、文件太大 C:/WINDOWS/TEMP文件夾的磁盤滿了,文件寫不進(jìn)去了,此時(shí)清空temp文件夾里面的數(shù)據(jù)就可以;或者刪除這個(gè)文件#sql_2250_0.MYD(若執(zhí)行下面的步驟這個(gè)文件還是必須要?jiǎng)h除的);
注:但是這不是根本的解決辦法要是服務(wù)器裝了 McAfee必須執(zhí)行下面的步驟才可以解決這個(gè)問(wèn)題
3、殺毒軟件McAfee問(wèn)題
3.1、McAfee訪問(wèn)保護(hù)設(shè)置問(wèn)題 修改McAfee的訪問(wèn)保護(hù)為允許TEMP文件可寫;
3.2、McAfee的訪問(wèn)掃描問(wèn)題 打開McAfee按訪問(wèn)掃描屬性-所有進(jìn)程-檢測(cè)項(xiàng)-掃描文件(在寫入磁盤時(shí))勾去掉;
4、解決MYSQL出現(xiàn) Can't create/write to file 'C:/WINDOWS/TEMP/#sql_5c0_0.MYD'
在my.ini中 [mysqld]里面添加一行
tmpdir="d:/mysql/temp/"
指定創(chuàng)建創(chuàng)建臨時(shí)文件的目錄,大量查詢時(shí)會(huì)用到
重新啟動(dòng)mysql服務(wù)使之生效.
打開McAfee VirusScan控制臺(tái)->按訪問(wèn)掃描程序->屬性->所有進(jìn)程->檢測(cè)項(xiàng)->排除項(xiàng)->添加D:/mysql /temp/
排除時(shí)間選擇讀取時(shí)寫入時(shí).
備注:由于mysql默認(rèn)的臨時(shí)目錄是c:/windows/temp,網(wǎng)上流傳的說(shuō)法是
修改McAfee VirusScan控制臺(tái)->按訪問(wèn)掃描程序->屬性->所有進(jìn)程->檢測(cè)項(xiàng)->掃描文件去掉寫入文件時(shí),
我的方法相對(duì)要安全些.
至于權(quán)限,由于mysql服務(wù)默認(rèn)是系統(tǒng)權(quán)限,一般都是系統(tǒng)完全控制的,如果必要,也可給個(gè)啟動(dòng)用戶。
相關(guān)文章
MySQL服務(wù)啟動(dòng)與關(guān)閉如何操作圖文詳解
這篇文章主要為大家介紹了MySQL服務(wù)啟動(dòng)與關(guān)閉如何操作圖文詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-10-10mysql利用group_concat()合并多行數(shù)據(jù)到一行
把查詢name字段得到的多行記錄進(jìn)行合并,可以通過(guò)程序?qū)崿F(xiàn),但也可直接在sql層完成,需要的朋友可以參考下2014-07-07