Μόλις βρήκα μια ωραία επιλογή στο MySQL για να μπω στο σύστημα αρχείων και να λάβω πολύτιμες πληροφορίες, για παράδειγμα σχετικά με την ύπαρξη αρχείων και φακέλων ή του περιεχομένου τους. Αυτό μπορεί να είναι πολύ χρήσιμο ως εναλλακτική λύση στη συνάρτηση php file_exists , καθώς οι πληροφορίες σχετικά με την ύπαρξη των αρχείων μπορούν να χρησιμοποιηθούν στο ερώτημα για περαιτέρω λειτουργίες ταξινόμησης και συγκέντρωσης.
Εάν ο συσχετισμένος χρήστης της βάσης δεδομένων έχει το δικαίωμα FILE , μπορείτε να χρησιμοποιήσετε την εντολή
SELECT LOAD_FILE(*PFAD ZUR DATEI*)
Κατά τη διάρκεια του ερωτήματος όχι μόνο ελέγξτε αν υπάρχει ένα αρχείο, αλλά και διαβάστε το περιεχόμενό του.
Σε συστήματα Windows θα πρέπει να σημειωθεί ότι η ανάστροφη κάθετο στη διαδρομή προς το αρχείο πρέπει να επισημανθεί ανάλογα (παράδειγμα: C: \\ Windows \\ System32 \\ drivers \\ etc \\ hosts). Η πτυχή ασφάλειας δεν πρέπει επίσης να αγνοηθεί πλήρως, καθώς όταν χορηγείται το προνόμιο FILE, η πρόσβαση στη βάση δεδομένων σημαίνει αυτόματα πρόσβαση στο υπόλοιπο σύστημα αρχείων.
Για να διασφαλιστεί ότι δεν επιστρέφονται μόνο οι τιμές NULL, πρέπει να διασφαλιστεί ότι ο χρήστης που εκτελεί MySQL έχει δικαιώματα ανάγνωσης.
Για να αποκτήσετε πρόσβαση σε μεγάλα αρχεία, η καθολική ιδιότητα "max_allowed_packet", η οποία έχει οριστεί σε 1 MB, πρέπει να αυξηθεί.
mysql -u... -p... set global max_allowed_packet = 1024 * 1024 * 512; exit;
Τώρα μπορείτε (μετά την επανεκκίνηση του διακομιστή) να αποκτήσετε πρόσβαση σε αρχεία μεγέθους έως 512 MB.