Tidak dapat membuat / menulis ke file '/tmp/#sql_xxxx.MYI' (Errcode: 13)

9

Saya telah menginstal Debian Lenny, PHPmyadmin, dan postfix.

Saat menggunakan PHPmyadmin GUI dan mengakses tabel apa pun dengan data yang saya dapatkan:

Tidak dapat membuat / menulis ke file '/tmp/#sql_xxxx.MYI' (Errcode: 13)

melakukan perror 13 mengatakan:

OS error code  13:  Permission denied

Saya menemukan tmpdir lik demikian:

mysqladmin -p variables | grep -w tmpdir
| tmpdir                          | /tmp

Sekarang itu berarti bahwa mysql tidak dapat menulis ke / tmp. Membuat izin untuk: 777 memperbaikinya. Tetapi saya merasa tidak benar harus melakukan itu. Apakah ada cara / perbaikan yang lebih baik?

Haruskah saya mengubah nilai tmpdir /etc/mysql/my.cnf?

Cudos
sumber
terima kasih telah memasukkan output mysqladmin. Saya sekarang menggunakan ini untuk menyumbangkan tmpdir khusus untuk mysql, menambahkan sedikit keamanan.
Florian Heigl

Jawaban:

20

Sepertinya izin Anda pada / tmp salah. Mereka benar-benar harus dibaca / ditulis / dieksekusi untuk semua orang dengan set bit lengket.

chmod 1777 /tmp

Sticky bit menambahkan beberapa batasan pada bagaimana pengguna lain berinteraksi dengan file yang tidak dibuat atau dimiliki oleh mereka, jadi tidak ada alasan untuk khawatir.

Jika diinginkan, Anda juga dapat membuat direktori terpisah yang dimiliki dan dapat ditulisi oleh pengguna mysql dan tentukan direktori itu di my.cnf untuk digunakan sebagai ganti lebar sistem / tmp.

Roy
sumber
Terima kasih banyak untuk ini: "chmod 1777 / tmp" bit lengket adalah sesuatu yang saya tidak tahu dan itu membunuh saya karena saya kehilangan banyak waktu karena tidak tahu mengapa. Sekarang saya lakukan. Terima kasih telah memposting "chmod 1777 / tmp" ini
3

Direktori / tmp normal dapat ditulis untuk semua orang. Anda tidak perlu khawatir tentang ini. Tambahan bit lengket diatur sehingga hanya root dan pemilik file dapat menghapus file itu.

chmod 777 / tmp
chmod o + t / tmp

Semoga harimu menyenangkan

Grub
sumber
apakah ada yang tahu angka oktal untuk bit lengket?
grub
Yap, ini 1 pada oktal pertama.
Roy