मुझे पता है कि यह पोस्ट पुरानी है, लेकिन यह अभी भी खोज परिणामों में सामने आती है। मुझे इस समस्या का समाधान ऑनलाइन नहीं मिला, इसलिए मैंने खुद ही इसका पता लगा लिया। यदि आप उबंटू का उपयोग कर रहे हैं, तो "एपर्मर" नामक एक प्रोग्राम है जो MySQL को फ़ाइल देखने से रोक रहा है। यदि आप चाहते हैं कि MySQL "tmp" निर्देशिका से फ़ाइलों को पढ़ने में सक्षम हो, तो आपको यह करने की आवश्यकता है:
sudo vim /etc/apparmor.d/usr.sbin.mysqld
एक बार जब आप फ़ाइल में हों, तो आपको निर्देशिकाओं का एक समूह दिखाई देगा जिसका उपयोग MySQL कर सकता है। लाइन जोड़ें /tmp/** rwk
फ़ाइल के लिए (मुझे यकीन नहीं है कि यह कहाँ मायने रखता है, लेकिन यहाँ एक नमूना है जहाँ मैंने इसे रखा है):
/etc/mysql/*.pem r,
/etc/mysql/conf.d/ r,
/etc/mysql/conf.d/* r,
/etc/mysql/*.cnf r,
/usr/lib/mysql/plugin/ r,
/usr/lib/mysql/plugin/*.so* mr,
/usr/sbin/mysqld mr,
/usr/share/mysql/** r,
/var/log/mysql.log rw,
/var/log/mysql.err rw,
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
/tmp/** rwk,
/var/log/mysql/ r,
/var/log/mysql/* rw,
/var/run/mysqld/mysqld.pid w,
/var/run/mysqld/mysqld.sock w,
/run/mysqld/mysqld.pid w,
/run/mysqld/mysqld.sock w,
अब आपको बस इतना करना है कि Apparmor को फिर से लोड करें:
sudo /etc/init.d/apparmor reload
नोट मैंने "vim" का उपयोग किया है, लेकिन इसके स्थान पर जो भी आपका पसंदीदा टेक्स्ट एडिटर है, वह यह है कि आप इसका उपयोग करना जानते हैं।