LOAD DATA INFILE 錯誤代碼:13 - 解決文件存取問題
執行LOAD DATA INFILE 查詢時遇到MyMySQL 錯誤代碼13可能會令人沮喪。當 MySQL 在存取指定檔案時遇到問題時,通常會發生此錯誤。
此錯誤的一個常見原因是檔案或資料夾權限不正確。若要解決此問題,請確保資料庫使用者俱有必要的檔案存取權限。驗證使用者是否對指定檔案及其父目錄具有讀寫權限。
要進一步解決此問題,請考慮以下步驟,已知這些步驟可以解決特定場景中的錯誤代碼13:
檢查AppArmor 配置(僅限Ubuntu):
如果MySQL 伺服器在Ubuntu 系統上運行,AppArmor(安全模組)可能會阻止MySQL 存取檔案。若要解決此問題,請編輯 /etc/apparmor.d/usr.sbin.mysqld 檔案。將行/tmp/** rwk 新增至檔案中,並使用以下命令重新載入AppArmor:
<code class="sh">sudo /etc/init.d/apparmor reload</code>
驗證檔案擁有權:
確保您所在的檔案嘗試載入由MySQL 使用者擁有。為此,請執行以下命令:
<code class="sh">chown mysql:mysql /httpdocs/.../.../testFile.csv</code>
停用 SELinux:
如果您的系統上啟用了 SELinux,它可能會幹擾檔案存取。暫時停用SELinux 以檢查是否可以解決問題:
<code class="sh">setenforce 0</code>
透過實作這些步驟,您可以排查並解決LOAD DATA INFILE 錯誤代碼13,確保MySQL 可以成功存取檔案並將檔案載入到表中.
以上是為什麼我在 MySQL 中收到 LOAD DATA INFILE 錯誤代碼 13?的詳細內容。更多資訊請關注PHP中文網其他相關文章!