解決MYSQL出現Can''t create/write to file ''#sql

來源:互聯網
上載者:User

今天我上網站的管理後台,登入時提示
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 )
根據從網上搜尋問題提示和自己遇到的情況分析、解決辦法如下:

說明:
出現這個問題是由於伺服器環境不允許執行資料庫校正,無法進行此操作。
解決思路和原因:
1、許可權問題 C:/WINDOWS/TEMP檔案夾許可權不夠,最少要給出USERS組的可讀可寫入權限、要不就給everyone許可權也可以;
2、檔案太大 C:/WINDOWS/TEMP檔案夾的磁碟滿了,檔案寫不進去了,此時清空temp檔案夾裡面的資料就可以;或者刪除這個檔案#sql_2250_0.MYD(若執行下面的步驟這個檔案還是必須要刪除的);

註:但是這不是根本的解決辦法要是伺服器裝了 McAfee必須執行下面的步驟才可以解決這個問題

3、殺毒軟體McAfee問題
 3.1、McAfee訪問保護設定問題 修改McAfee的訪問保護為允許TEMP檔案可寫;
 3.2、McAfee的訪問掃描問題 開啟McAfee按訪問掃描屬性-所有進程-檢測項-掃描檔案(在寫入磁碟時)勾去掉;

4、解決MYSQL出現 Can't create/write to file 'C:/WINDOWS/TEMP/#sql_5c0_0.MYD'
在my.ini中 [mysqld]裡面添加一行
tmpdir="d:/mysql/temp/"
指定建立建立臨時檔案的目錄,大量查詢時會用到
重新啟動mysql服務使之生效.

開啟McAfee VirusScan控制台->按訪問掃描程式->屬性->所有進程->檢測項->排除項->添加D:/mysql /temp/
排除時間選擇讀取時寫入時.

備忘:由於mysql預設的臨時目錄是c:/windows/temp,網上流傳的說法是
修改McAfee VirusScan控制台->按訪問掃描程式->屬性->所有進程->檢測項->掃描檔案去掉寫入檔案時,
我的方法相對要安全些.

至於許可權,由於mysql服務預設是系統許可權,一般都是系統完全控制的,如果必要,也可給個啟動使用者。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.