Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membetulkan MySQL Errcode 13 (Permissions Error) dengan SELECT INTO OUTFILE?

Bagaimana untuk Membetulkan MySQL Errcode 13 (Permissions Error) dengan SELECT INTO OUTFILE?

Linda Hamilton
Linda Hamiltonasal
2025-01-24 14:52:10772semak imbas

How to Fix MySQL Errcode 13 (Permissions Error) with SELECT INTO OUTFILE?

Menyelesaikan ralat kebenaran MySQL Errcode 13 dan pernyataan SELECT INTO OUTFILE

Soalan:

Apabila cuba menggunakan SELECT INTO OUTFILE untuk mengeksport data jadual ke fail CSV di luar direktori lalai pelayan, anda masih menemui Errcode 13 (ralat kebenaran) walaupun selepas melaraskan kebenaran dan pemilikan. Ini kerap berlaku pada sistem Ubuntu, terutamanya sistem yang menjalankan AppArmor.

Penyelesaian:

1. Semak status AppArmor:

Jalankan perintah sudo aa-status untuk mengesahkan sama ada mysqld berada dalam mod penguatkuasaan. Jika ia muncul dalam senarai, AppArmor berkemungkinan besar menyekat operasi tulis.

2. Edit fail konfigurasi AppArmor:

Buka fail /etc/apparmor.d/usr.sbin.mysqld dan tambah laluan direktori yang diingini di bahagian bawah fail, pastikan anda mempunyai kebenaran membaca/menulis. Contohnya:

<code>/usr/sbin/mysqld {
    ...
    **/data/ r,
    /data/* rw,**
}</code>

3. Muat semula fail konfigurasi AppArmor:

Laksanakan perintah sudo /etc/init.d/apparmor reload untuk menggunakan perubahan.

4. Cuba semula pertanyaan:

Selepas memuatkan semula fail konfigurasi AppArmor, cuba pertanyaan SELECT INTO OUTFILE sekali lagi. MySQL kini sepatutnya boleh menulis ke direktori sasaran.

Amaran:

Berhati-hati dengan implikasi keselamatan pemberian kebenaran menulis MySQL kepada direktori selain daripada lokasi lalainya. Pastikan langkah-langkah yang sesuai disediakan untuk melindungi data sensitif.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan MySQL Errcode 13 (Permissions Error) dengan SELECT INTO OUTFILE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn