MySQL OUTFILE क्वेरी शिकायत करती है कि "फ़ाइल पहले से मौजूद है" लेकिन फ़ाइल बिल्कुल मौजूद नहीं है - mysql, linux

मैं CSV फ़ाइल में तालिका को डंप करने के लिए एक बहुत ही सरल शैल स्क्रिप्ट लिख रहा हूं। यहां इसका हिस्सा है:

day=`/bin/date +"%Y-%m-%d"`
file="/tmp/table-$day.csv"
rm $file
query="SELECT * FROM table INTO OUTFILE "$file" FIELDS TERMINATED BY "," ENCLOSED BY """ LINES TERMINATED BY "\n""
echo "$query" | mysql <connection_parameters>

मैंने अंदर रखा rm $file यह सुनिश्चित करने के लिए कि फ़ाइल क्वेरी के निष्पादन से पहले मौजूद नहीं है।

हालांकि, जब मैं स्क्रिप्ट निष्पादित करता हूं, तो मुझे विवादित संदेश मिलते हैं:

rm: cannot remove `/tmp/table-2013-02-08.csv": No such file or directory
ERROR 1086 (HY000) at line 1: File "/tmp/table-2013-02-08.csv" already exists

मुझे मशीन में कहीं भी आउटफाइल नहीं मिल रहा है।

तो क्या गलत है ..?

धन्यवाद।

उत्तर:

जवाब के लिए 8 № 1

मुझे जवाब मिल गया है।

आउटफाइल मेरे MySQL क्लाइंट की मशीन के बजाय, MySQL सर्वर पर फ़ाइल बनाता है।


जवाब के लिए 0 № 2

जांचें कि क्या आपके पास यह / etc / passwd है या नहीं

mysql: x: 27: 27: मारिया डीबी सर्वर: / var / lib / mysql: / sbin / nologin

बदले में / bin / bash को खोलें


संबंधित सवाल
सबसे लोकप्रिय