MySQL में लोड डेटा INFILE के लिए एक्सेस अस्वीकृत
MySQL में, लोड डेटा INFILE स्टेटमेंट का उपयोग करने से एक्सेस अस्वीकृत त्रुटि हो सकती है, जैसे जैसा कि "#1045 - उपयोगकर्ता 'उपयोगकर्ता'@'लोकलहोस्ट' (पासवर्ड का उपयोग करके: हाँ) के लिए प्रवेश निषेध है।"
यह त्रुटि आम तौर पर इंगित करती है कि क्वेरी निष्पादित करने वाले वर्तमान उपयोगकर्ता के पास डेटा लोड करने के लिए पर्याप्त विशेषाधिकार नहीं हैं एक फ़ाइल को एक तालिका में. इस समस्या को हल करने के लिए, सुनिश्चित करें कि उपयोगकर्ता के पास आवश्यक अनुमतियाँ हैं।
विशेष रूप से, उपयोगकर्ता को FILE विशेषाधिकार दिए जाने की आवश्यकता है। यह विशेषाधिकार उपयोगकर्ताओं को सर्वर के फ़ाइल सिस्टम से फ़ाइलें पढ़ने की अनुमति देता है। इस विशेषाधिकार के बिना, उपयोगकर्ता निर्दिष्ट फ़ाइल तक नहीं पहुंच पाएगा।
किसी उपयोगकर्ता को फ़ाइल विशेषाधिकार प्रदान करने के लिए, निम्नलिखित क्वेरी निष्पादित करें:
GRANT FILE ON *.* TO user_name;
user_name को उस उपयोगकर्ता के उपयोगकर्ता नाम से बदलें, जिसे आप विशेषाधिकार देना चाहते हैं।
इसके अतिरिक्त, LOAD DATA INFILE स्टेटमेंट में LOCAL कीवर्ड जोड़ने पर विचार करें। LOCAL कीवर्ड MySQL को सर्वर के फ़ाइल सिस्टम के बजाय क्लाइंट मशीन से फ़ाइल पढ़ने का निर्देश देता है। यह कुछ मामलों में अधिक कुशल और सुरक्षित हो सकता है।
यहां LOCAL का उपयोग करके संशोधित कथन का एक उदाहरण दिया गया है:
LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3