首頁 >資料庫 >mysql教程 >當啟用ApparMor時,如何將MySQL Errcode 13與Select In Outfile解析?

當啟用ApparMor時,如何將MySQL Errcode 13與Select In Outfile解析?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-24 15:01:09626瀏覽

How to Resolve MySQL Errcode 13 with SELECT INTO OUTFILE When AppArmor is Enabled?

解決 AppArmor 啟用時 SELECT INTO OUTFILE 導致的 MySQL Errcode 13 錯誤

本文探討了使用 MySQL SELECT INTO OUTFILE 語句將表格內容匯出到 CSV 檔案時遇到的 Errcode 13 錯誤問題。

問題:使用者嘗試將檔案匯出到非預設目錄時,遇到權限錯誤。即使修改了目錄的所有權和權限,錯誤仍然存在。

原因:使用者可能運行的是啟用了 AppArmor 的 Ubuntu 伺服器版本。 AppArmor 會限制對特定目錄的寫入存取權。解決方法是修改 mysqld 的 AppArmor 設定文件,將目標目錄新增到允許存取的目錄清單中。

解決步驟:

  1. 使用 sudo aa-status 指令檢查 AppArmor 狀態。
  2. 如果 mysqld 以啟用模式運行,編輯 /etc/apparmor.d/usr.sbin.mysqld 文件,並將所需目錄新增至允許存取的目錄清單。
  3. 使用 sudo /etc/init.d/apparmor reload 指令重新載入 AppArmor 設定檔。

透過上述步驟,即可解決 MySQL Errcode 13 錯誤,並使用 SELECT INTO OUTFILE 語句匯出 CSV 檔案。 需要注意的是,此修改將賦予 MySQL 對新增目錄的讀寫權限,因此務必仔細權衡安全隱患。

以上是當啟用ApparMor時,如何將MySQL Errcode 13與Select In Outfile解析?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn