Πώς να εξάγετε δεδομένα στο mysql. Αποθέτουμε τη βάση δεδομένων MySQL και εξάγουμε δεδομένα στην κονσόλα. Εισαγωγή αρχείων SQL σε βάσεις δεδομένων MySQL χρησιμοποιώντας phpMyAdmin

Συχνά με ρωτούν πώς να εισάγω μια μεγάλη βάση δεδομένων στον διακομιστή Δεδομένα MySQL. Είναι γνωστό ότι το phpMyAdmin από προεπιλογή έχει περιορισμούς στο μέγεθος της εισαγόμενης βάσης δεδομένων.

Εάν η χωματερή σας δεν είναι πολύ μεγαλύτερη από το αποδεκτό όριο, μπορείτε να τη χωρίσετε σε πολλά μέρη και να την εισαγάγετε σε πολλά περάσματα. Αυτό δικαιολογείται εάν, για παράδειγμα, το όριο είναι 2 MB και η βάση δεδομένων σας έχει μέγεθος 5-10 MB. Είναι σαφές ότι το «κόψιμο» μιας βάσης δεδομένων 100 MB σε 50 μέρη είναι μια αρκετά απαιτητική και χρονοβόρα διαδικασία.

Υπάρχουν πολλές επιλογές για την επίλυση αυτού του προβλήματος.

Επεξεργασία της διαμόρφωσης του διακομιστή web

Στα VDS/VPS δεν υπάρχουν ιδιαίτερα προβλήματα με αυτό, απλά πρέπει να διορθώσετε τη διαμόρφωση. Δηλαδή, στο php.ini, αυξήστε τις μέγιστες επιτρεπόμενες τιμές για τα αρχεία που ανεβαίνουν στον διακομιστή, μέγιστο μέγεθοςγια αρχεία που μεταφέρονται με τη μέθοδο POST:

Post_max_size = 2000M upload_max_filesize = 2000M

Επιπλέον, εάν η βάση δεδομένων σας είναι πολύ μεγάλη, θα πρέπει να αυξήσετε τον μέγιστο επιτρεπόμενο χρόνο εκτέλεσης σεναρίου.

Max_execution_time = 32000 max_input_time = 32000

Και για κάθε περίπτωση, μπορείτε να αυξήσετε το μέγεθος της επιτρεπόμενης ποσότητας RAM:

Όριο_μνήμης = 512M

Αφού κάνετε αλλαγές, φροντίστε να επανεκκινήσετε τον διακομιστή web.

Είναι σαφές ότι αυτή η μέθοδος δεν είναι κατάλληλη για εικονική φιλοξενία, επειδή... δεν συνεπάγεται τη δυνατότητα επεξεργασίας παραμέτρων.

Ανατρεπόμενο όχημα Sypex

Μπορείς να χρησιμοποιήσεις λογισμικό τρίτων. Και η πρώτη εφαρμογή που αξίζει να προσέξετε είναι το Sypex Dumper.

Έχοντας το χρησιμοποιήσει για πρώτη φορά πριν από πολλά χρόνια και εκτιμώντας όλες τις δυνατότητες και τα πλεονεκτήματά του, μπορώ με ασφάλεια να το χαρακτηρίσω ως "Must Have". Sypex Dumper - εφαρμογή διακομιστήσε PHP που δεν απαιτεί εγκατάσταση. Αρκεί να το αντιγράψετε, για παράδειγμα, στη ρίζα του ιστότοπού σας στον κατάλογο sxd και να το καλέσετε στο πρόγραμμα περιήγησης: http://Your_Site/sxd/. Αξίζει να σημειωθεί ότι θα πρέπει πρώτα να τοποθετήσετε ένα dump της βάσης δεδομένων σας στον κατάλογο αντιγράφων ασφαλείας. Μετά την προετοιμασία του σεναρίου, θα δείτε τον πίνακα εξουσιοδότησης για σύνδεση στη βάση δεδομένων. Εισαγάγετε το όνομα χρήστη και τον κωδικό πρόσβασής σας. Ο κεντρικός υπολογιστής και η θύρα είναι προαιρετικά μόνο εάν είναι συγκεκριμένα.

Μετά την εξουσιοδότηση, μπορείτε να μεταβείτε απευθείας στην εισαγωγή της βάσης δεδομένων. Στο χωράφι "Βάση δεδομένων"θα επιλεγεί η βάση δεδομένων στην οποία είστε συνδεδεμένοι και στο πεδίο "Αρχείο"θα δείτε το dump που ανεβάσατε προηγουμένως στον κατάλογο Backup.

Για τις περισσότερες περιπτώσεις καμία επιπρόσθετες ρυθμίσειςδεν χρειάζονται πλέον και μπορείτε να ξεκινήσετε με ασφάλεια την εισαγωγή κάνοντας κλικ στο κουμπί "Εκτέλεση". Η εισαγωγή, ανάλογα με το μέγεθος της βάσης δεδομένων και την ταχύτητα της σύνδεσής σας στο Διαδίκτυο, ενδέχεται να διαρκέσει κάποιο χρονικό διάστημα. Κατά την εισαγωγή, μπορείτε να δείτε σε ποιους πίνακες εισάγονται αυτή τη στιγμήστη βάση δεδομένων. Όταν ολοκληρωθεί το σενάριο, θα δείτε το αρχείο καταγραφής εκτέλεσης. Μοιάζει κάπως έτσι:

Αυτό είναι όλο, στην πραγματικότητα - η βάση δεδομένων εισάγεται!

Κονσόλα

Δεν θα εξετάσουμε το ενδεχόμενο εισαγωγής μέσω της κονσόλας. Νομίζω ότι οι άνθρωποι που χρησιμοποιούν την κονσόλα χωρίς εμένα ξέρουν πώς να εισάγουν οποιαδήποτε βάση δεδομένων. ΕΝΑ απλούς χρήστεςΕίναι καλύτερα να μην πάτε εκεί χωρίς ειδική εκπαίδευση. Δεδομένου ότι η εκτέλεση ορισμένων εντολών μπορεί να οδηγήσει σε σοβαρές συνέπειες, συμπεριλαμβανομένης της πλήρους κατάρρευσης του διακομιστή.

Τελικά

Δεν υποθέτω να πω ότι το Sydex Dumper είναι η μόνη και σωστή λύση. Υπάρχουν άλλες πιο κομψές μέθοδοι που απαιτούν από τον χρήστη να έχει ορισμένες γνώσεις και κατάλληλη πρόσβαση στις ρυθμίσεις διακομιστή.

Αλλά σε ένα κοινό περιβάλλον φιλοξενίας, το Sydex Dumper θα είναι σίγουρα ο απαραίτητος βοηθός σας.

Εγγραφείτε στο τηλεγράφημά μου και λάβετε πρώτοι νέο υλικό, συμπεριλαμβανομένων αυτών που δεν υπάρχουν στον ιστότοπο.

Αυτό το μάθημα καλύπτει σημαντικά θέματα όπως π.χ εξαγωγή βάσης δεδομένωνΚαι εισαγωγή βάσης δεδομένων MySQL. Ίσως ρωτήσετε, γιατί να εξάγετε καθόλου βάσεις δεδομένων; Κατά κανόνα, αυτό γίνεται με σκοπό τη δημιουργία αντιγράφων ασφαλείας της βάσης δεδομένων, ώστε να είναι πάντα διαθέσιμη, όπως λένε, για κάθε ενδεχόμενο. Σε τελική ανάλυση, κανείς δεν είναι απρόσβλητος από περιστάσεις ανωτέρας βίας, όπως ατυχήματα φιλοξενίας, τα οποία μπορεί να οδηγήσουν σε απώλεια δεδομένων. Ένα άλλο παράδειγμα θα μπορούσε να είναι μια επίθεση από χάκερ που θέλουν να βλάψουν τον ιστότοπό σας. Στην πραγματικότητα, μπορεί να υπάρχουν πολλά τέτοια παραδείγματα.

Η εισαγωγή βάσης δεδομένων χρησιμοποιείται όταν χρειάζεται να "επαναανεβάσετε" μια βάση δεδομένων στην τρέχουσα φιλοξενία σας ή όταν μετακινηθείτε σε άλλη φιλοξενία. Αυτό γίνεται επίσης συχνά στην πράξη από webmasters.

Μόνοι μας εξαγωγή βάσης δεδομένωνΚαι εισαγωγή βάσης δεδομένων- οι εργασίες είναι απλές. Αξίζει να εκτελέσετε αυτές τις ενέργειες μία φορά για να θυμάστε τον αλγόριθμο για την εφαρμογή τους για το υπόλοιπο της ζωής σας. Ας δούμε πώς γίνονται όλα αυτά με παραδείγματα.

Για να εξαγάγετε μια βάση δεδομένων, πρέπει να μεταβείτε στον πίνακα διαχείρισης φιλοξενίας και, στη συνέχεια, να μεταβείτε στην ενότητα της βάσης δεδομένων - Βάσεις δεδομένων MySQL.

Επιλέξτε τη βάση δεδομένων που θέλουμε να εξαγάγουμε (μεταβείτε στο phpMyAdmin). ΣΕ σε αυτό το παράδειγμαη βάση δεδομένων ονομάζεται "cl209038".

1) Στην πρώτη περίπτωση, επιλέξτε "Fast", αφήστε τη μορφή ως SQL και πατήστε το κουμπί "OK". Ως αποτέλεσμα, ένα αντίγραφο της βάσης δεδομένων θα μεταφορτωθεί στον υπολογιστή μας.

2) Στη δεύτερη περίπτωση, επιλέξτε «Κανονικό». Θα εμφανιστεί μια σελίδα με ρυθμίσεις εξαγωγής βάσης δεδομένων. Επιλέξτε όλους τους πίνακες, επιλέξτε το επίπεδο κωδικοποίησης και συμπίεσης, όπως φαίνεται παρακάτω. Τα υπόλοιπα, κατά κανόνα, δεν χρειάζεται να αλλάξουν. Κάντε κλικ στο κουμπί "OK" και η βάση δεδομένων θα εξαχθεί στον υπολογιστή μας.

Αυτό είναι όλο, όπως μπορείτε να δείτε, εξαγωγή βάσης δεδομένωνΗ MySQL δεν είναι δύσκολη υπόθεση.

Για να εισαγάγετε μια βάση δεδομένων, πρέπει επίσης να μεταβείτε στον πίνακα διαχείρισης φιλοξενίας και να μεταβείτε στην ενότητα με βάσεις δεδομένων MySQL. Υπάρχουν δύο επιλογές εδώ - είτε πρέπει να δημιουργήσετε μια νέα βάση δεδομένων είτε να κάνετε εξαγωγή σε μια υπάρχουσα.

Η δημιουργία μιας βάσης δεδομένων θα απαιτηθεί, για παράδειγμα, εάν μεταφέρουμε τον ιστότοπο σε άλλη φιλοξενία. Εάν εξακολουθούμε να έχουμε την ίδια φιλοξενία και η βάση δεδομένων έχει ήδη δημιουργηθεί, τότε μπορείτε απλά να επιλέξετε αυτήν τη βάση δεδομένων και να «ανεβάσετε ξανά» τα δεδομένα σε αυτήν. Μπορείτε, φυσικά, να το διαγράψετε, στη συνέχεια να δημιουργήσετε ένα νέο (κενό) και να το ανεβάσετε σε αυτό.

1) Η βάση δεδομένων υπάρχει ήδη. Επιλέγουμε μια βάση δεδομένων για να εισάγουμε το αντίγραφο της βάσης δεδομένων μας. Θα εμφανιστεί το μενού εισαγωγής βάσης δεδομένων.

Επιλέξτε το αρχείο αντιγραφής βάσης δεδομένων που θέλετε να εισαγάγετε. Εάν είναι απαραίτητο, μπορείτε να αλλάξετε την κωδικοποίηση και τη μορφή της βάσης δεδομένων. Στη συνέχεια, κάντε κλικ στο κουμπί "OK". Μετά την εισαγωγή, το σύστημα θα μας ενημερώσει εάν όλα πήγαν σωστά ή αν παρουσιάστηκαν σφάλματα κατά τη διαδικασία. Εάν παρουσιαστούν σφάλματα, μπορείτε να προσπαθήσετε να διαγράψετε τη βάση δεδομένων στη φιλοξενία, στη συνέχεια να δημιουργήσετε μια κενή βάση δεδομένων και να εισαγάγετε ξανά τη βάση δεδομένων.

2) Δημιουργία νέας βάσης δεδομένων. Μεταβείτε στον πίνακα διαχείρισης φιλοξενίας και επιλέξτε την ενότητα με βάσεις δεδομένων MySQL. Μπαίνουμε στη διαχείριση βάσεων δεδομένων MySQL.

Καθορίστε το επιθυμητό όνομα βάσης δεδομένων και τον κωδικό πρόσβασης για αυτήν. Κάντε κλικ στο κουμπί «Δημιουργία». Ως αποτέλεσμα, θα πρέπει να δημιουργηθεί μια νέα (κενή) βάση δεδομένων - σε αυτήν θα χρειαστεί να εισαγάγουμε ένα προηγουμένως αποθηκευμένο αντίγραφο της βάσης δεδομένων μας.

Αυτό είναι το μόνο που ήθελα να σας πω σχετικά με την εξαγωγή και την εισαγωγή βάσεων δεδομένων MySQL. Εάν έχετε οποιεσδήποτε δυσκολίες σχετικά με αυτές τις ερωτήσεις, γράψτε σχόλια σε αυτό το μάθημα.

Σε αυτό το άρθρο θα εξετάσουμε δύο ερωτήσεις - πώς μπορείτε να εισάγετε βάσεις δεδομένων και πώς να λύσετε το πρόβλημα με την εισαγωγή μεγάλων βάσεων δεδομένων αλλάζοντας τις ρυθμίσεις στο php.ini.

Όπως γνωρίζετε, η δημιουργία αντιγράφων ασφαλείας δεδομένων αποτελεί εγγύηση ότι θα μπορέσετε να επαναφέρετε τον ιστότοπό σας εάν ξαφνικά, για κάποιο λόγο, διακοπεί η λειτουργία του ιστότοπου. Πώς να επαναφέρετε έναν ιστότοπο από ένα αντίγραφο ασφαλείας; Υπάρχουν διάφοροι τρόποι, θα δούμε πώς μπορείτε να εισάγετε μια βάση δεδομένων mysql στο phpMyAdmin. Πριν ξεκινήσετε τη διαδικασία εισαγωγής βάσης δεδομένων, πρέπει να διαγράψετε όλους τους πίνακες από τη βάση δεδομένων στην οποία πρόκειται να εισαγάγετε αρχεία.

Για να διαγράψετε πίνακες, συνδεθείτε στο αρχική σελίδα phpMyAdmin και κάντε τα εξής:


2 - κάντε κλικ στην επιλογή Επισήμανση όλων.
3 - επιλέξτε Διαγραφή από το αναπτυσσόμενο μενού και κάντε κλικ στο OK,

Τώρα μπορείτε να ξεκινήσετε την εισαγωγή της βάσης δεδομένων mysql. Για να το κάνετε αυτό, ακολουθήστε τα εξής βήματα:

1 - επιλέξτε την επιθυμητή βάση δεδομένων.
2 - ανοίξτε την καρτέλα Εισαγωγή σε επάνω μενού;
3 - βρείτε μέσω της Αναζήτησης Αντίγραφο ασφαλείαςμε τη βάση δεδομένων και κάντε κλικ στο OK.

Εάν τα κάνατε όλα σωστά, θα εμφανιστεί ένα μήνυμα που θα υποδεικνύει ότι η εισαγωγή ήταν επιτυχής στο παράθυρο phpMyAdmin.

Εισαγωγή μεγάλων βάσεων δεδομένων mysql

Οι webmasters συχνά αντιμετωπίζουν το πρόβλημα της εισαγωγής μεγάλων βάσεων δεδομένων mysql. Το πρόβλημα οφείλεται στο γεγονός ότι στο PHPMyAdmin, η λήψη μιας ένδειξης ένδειξης βάσης δεδομένων περιορίζεται από το μέγεθος του μεταφορτωμένου αρχείου, το οποίο από προεπιλογή δεν πρέπει να υπερβαίνει τα 2 MB (2.048 KB). Όταν προσπαθείτε να κάνετε λήψη μιας ένδειξης μιας μεγάλης βάσης δεδομένων, εμφανίζεται ένα μήνυμα σφάλματος: "Το μέγεθος του αρχείου λήψης είναι πιθανώς πολύ μεγάλο..." κ.λπ.

Ας δούμε έναν τρόπο εισαγωγής μιας ένδειξης μιας μεγάλης βάσης δεδομένων. Το όριο μεγέθους αρχείου εισαγωγής καθορίζεται από τη διαμόρφωση της PHP. Οι ρυθμίσεις διαμόρφωσης PHP καθορίζονται στο αρχείο php.ini. Αυτό σημαίνει ότι για να εισάγουμε μεγάλες βάσεις δεδομένων, θα χρειαστεί να αλλάξουμε το μέγιστο μέγεθος των μεταφορτωμένων αρχείων στο αρχείο διαμόρφωσης php.ini.

Πού βρίσκεται το αρχείο php.ini; Μπορείτε να υπολογίσετε τη διαδρομή προς το αρχείο php.ini ως εξής:

  • Δημιουργήστε ένα αρχείο info.php και τοποθετήστε τον παρακάτω κώδικα σε αυτό;
  • Ανεβάστε το αρχείο που δημιουργήθηκε στον ριζικό φάκελο του ιστότοπου (www, public_html).
  • ΣΕ γραμμή διεύθυνσηςπρόγραμμα περιήγησης, πληκτρολογήστε τη διεύθυνση http://your_site/info.php;
  • Στο παράθυρο που ανοίγει, βρείτε το Loaded Configuration File, όπου θα υποδεικνύεται η διαδρομή προς το αρχείο.

Για να εισαγάγετε μια μεγάλη βάση δεδομένων mysql, πρέπει να αλλάξετε τις οδηγίες php.ini στο PHPMyAdmin.

Το αρχείο php.ini βρέθηκε, τώρα το μόνο που μένει είναι να το επεξεργαστείτε ή μάλλον να αλλάξετε πολλές οδηγίες στο αρχείο όπως φαίνεται παρακάτω:

Μέγιστος χρόνος (δευτ.) για την πλήρη φόρτωση του σεναρίου:
max_execution_time = 60
Ο μέγιστος χρόνος (δευτερόλεπτα) που έχει καθοριστεί για τη λήψη όλων των δεδομένων από το σενάριο:
max_input_time = 90
Η μέγιστη ποσότητα μνήμης που επιτρέπεται να χρησιμοποιεί το σενάριο:
Όριο_μνήμης = 128M
Μέγιστο επιτρεπόμενο μέγεθος των μεταφορτωμένων αρχείων:
upload_max_filesize = 200M
Το μέγιστο μέγεθος των μεταφερόμενων δεδομένων που θα δεχτεί η PHP:
post_max_size = 180M

Αλλάζοντας τις παραπάνω οδηγίες στο php.ini, μπορέσαμε να κάνουμε εισαγωγή μέσω Βάση δεδομένων PHPMyAdminόγκος δεδομένων έως 180 M.

Για να εισαγάγετε ένα απόσπασμα βάσης δεδομένων μπορείτε επίσης να χρησιμοποιήσετε δωρεάν έκδοσηΠρογράμματα Sypex Dumper. Το ανατρεπόμενο όχημα είναι βελτιστοποιημένο για μέγιστη ταχύτηταεργασία, καθώς και εργασία με βάσεις δεδομένων περίπου 800 megabyte.

Κατά τη μεταφορά ενός ιστότοπου από έναν τοπικό διακομιστή σε φιλοξενία, μία από τις υποχρεωτικές διαδικασίες είναι η εξαγωγή/εισαγωγή της βάσης δεδομένων. Επομένως, σε αυτό το άρθρο θα προσπαθήσω να περιγράψω όσο το δυνατόν λεπτομερέστερα τη διαδικασία εξαγωγής και εισαγωγής μιας βάσης δεδομένων από έναν τοπικό διακομιστή, δηλαδή από τη διεπαφή ιστού PHPMyAdminέκδοση 3.2.3 για φιλοξενία.

Το πρώτο πράγμα που πρέπει να κάνετε είναι να τρέξετε τοπικός διακομιστής, στην προκειμένη περίπτωση είναι ο Denwer. Μετά την εκκίνηση του Denwer, πρέπει να ανοίξετε το πρόγραμμα περιήγησής σας και να εισαγάγετε στη γραμμή του προγράμματος περιήγησης: "http://localhost/tools/phpmyadmin", μετά το οποίο θα ανοίξει ένα παράθυρο μπροστά σας(Εικ.1)με προηγουμένως δημιουργηθεί βάσεις δεδομένων.

Εικ.1

Στη συνέχεια πρέπει να επιλέξουμε τη βάση δεδομένων που θα εξαγάγουμε, στην περίπτωσή μου είναι μια βάση δεδομένων που ονομάζεται Mybd. Μπορείτε να επιλέξετε μια βάση δεδομένων κάνοντας κλικ πάνω της στην αριστερή πλευρά του παραθύρου του προγράμματος περιήγησης, εκεί που λέει "Παρακαλώ επιλέξτε μια βάση δεδομένων" (Εικ. 2).


Εικ.2

Αφού επιλέξετε την επιθυμητή βάση δεδομένων, θα ανοίξει ένα παράθυρο με τη δομή της βάσης δεδομένων. Υπάρχει ένα στοιχείο στο επάνω μενού "Εξαγωγή"με τη βοήθεια του οποίου θα εξάγουμε τη βάση δεδομένων σε υπολογιστή και στη συνέχεια θα την εισάγουμε στο hosting. Και έτσι, μεταβείτε στο στοιχείο "Εξαγωγή". (Εικ.3).


Εικ.3

Στο παράθυρο που ανοίγει πρέπει να κάνετε κάποιες μετρήσεις (Εικ.4), δηλαδή: στο μπλοκ "Εξαγωγή" πρέπει να επιλέξετε όλους τους πίνακες βάσης δεδομένων κάνοντας κλικ στο στοιχείο "Επιλογή όλων"και επιλέξτε το πλαίσιο δίπλα στο στοιχείο SQL, αυτό το στοιχείο είναι υπεύθυνο για τον τύπο του αρχείου που θα εξαχθεί. Επίσης, πρέπει να επιλέξετε το πλαίσιο δίπλα "Αποθήκευση ως αρχείο", το οποίο θα διασφαλίσει ότι η βάση δεδομένων αποθηκεύεται σε ένα αρχείο. Δεν χρειάζεται να αλλάξετε άλλες ρυθμίσεις, απλώς πατήστε το κουμπί "Πηγαίνω".

Εικ.4

Τώρα, εάν τα κάνατε όλα σωστά, το αρχείο της βάσης δεδομένων θα πρέπει να γίνει λήψη στον υπολογιστή σας. Χρησιμοποιώντας αυτό το αρχείο θα εισάγουμε τη βάση δεδομένων στο hosting.

Επίσης, πρέπει να αλλάξετε την κωδικοποίηση αρχείου σε UTF-8 χωρίς BOM, για να αλλάξετε την κωδικοποίηση που χρησιμοποιώ επεξεργαστής κειμένου Σημειωματάριο ++(Κατεβάστε ) . Χρησιμοποιώντας αυτό το πρόγραμμα ανοίγετε το αρχείο της βάσης δεδομένων και στο μενού "Κωδικοποίηση"επιλέγω "Μετατροπή σε UTF-8 χωρίς BOM" (Εικ. 5), στη συνέχεια αποθηκεύστε και κλείστε.


Εικ.5

Καλημέρα συνάδελφοι :)

Σήμερα θα συνεχίσω να σας παρουσιάζω την εργασία με τη MySQL στην κονσόλα και τη γραμμή εντολών της MySQL.

Έχω ήδη γράψει άρθρα σχετικά με τον τρόπο εκτέλεσης βασικών ενεργειών με δεδομένα MySQL μέσω της κονσόλας και δημιουργίας αντιγράφων ασφαλείας Βάσεις δεδομένων MySQL, καθώς και εξαγωγή πληροφοριών που είναι αποθηκευμένες σε αυτό.

Η λογική συνέχεια αυτής της ιστορίας θα είναι η επαναφορά της βάσης δεδομένων και των πληροφοριών που είναι αποθηκευμένες σε αυτήν χρησιμοποιώντας λειτουργίες εισαγωγής βάσης δεδομένων MySQL. Και, κυρίως, θα συνεχίσουμε να το κάνουμε αυτό χρησιμοποιώντας το εργαλείο όλων των πραγματικών προγραμματιστών - μέσω της κονσόλας.

Εάν χρειάζεστε οδηγίες για την εισαγωγή μιας βάσης δεδομένων μέσω phpMyAdmin, τότε μπορείτε να τη βρείτε στο άρθρο σχετικά. Στο τρέχον άρθρο, δεν είμαι πρόθυμος να το περιγράψω ξανά, ειδικά επειδή το σημερινό υλικό θα είναι αφιερωμένο αποκλειστικά στην εισαγωγή της βάσης δεδομένων MySQL μέσω της κονσόλας.

Όμως, προτού αρχίσουμε να εξετάζουμε μεθόδους και εργαλεία, λίγα λόγια για το τι είναι η εισαγωγή μιας βάσης δεδομένων MySQL, πώς είναι και πώς να το κάνουμε καλύτερα;

Εισαγωγή βάσης δεδομένων MySQL: τι και γιατί;

Η εισαγωγή μιας βάσης δεδομένων MySQL είναι μια λειτουργία που γεμίζει τη βάση δεδομένων με πληροφορίες. Σε αυτήν την περίπτωση, η προέλευση δεδομένων είναι ένα αρχείο ένδειξης σφαλμάτων - ένα στιγμιότυπο μιας άλλης βάσης δεδομένων, που δημιουργείται αυτόματα κατά τη λειτουργία εξαγωγής ή ένα ειδικά προετοιμασμένο σενάριο SQL.

Η εισαγωγή, καθώς και η εξαγωγή της βάσης δεδομένων MySQL, υπάρχουν δύο τύποι πληροφοριών που αποθηκεύονται στη βάση δεδομένων:

  1. τη δομή της βάσης δεδομένων, τους πίνακες της και τα δεδομένα που είναι αποθηκευμένα σε αυτούς (κοινώς αποκαλούμενα βάση δεδομένων).
  2. απλά δεδομένα που αποθηκεύονται σε έναν πίνακα ή συλλέγονται χρησιμοποιώντας ΕΠΙΛΕΓΩαιτήσεων.

Αυτό το άρθρο θα συζητήσει και τις δύο επιλογές.

Για να επαναφέρετε μια βάση δεδομένων MySQL με τη δομή της και όλες τις αποθηκευμένες πληροφορίες από ένα dump, όπως αναφέρθηκε ήδη, χρειάζεστε ένα αρχείο ένδειξης σφαλμάτων βάσης δεδομένων, το οποίο είναι ένα αρχείο κειμένου με οποιαδήποτε επέκταση (μπορεί να συσκευαστεί εκ των προτέρων σε ένα αρχείο για μείωση του μεγέθους) που περιέχει Εντολές SQLγια τη δημιουργία της ίδιας της βάσης δεδομένων και πινάκων, καθώς και τη συμπλήρωσή τους με πληροφορίες.

Επομένως, για να επαναφέρετε μια βάση δεδομένων MySQL από ένα dump, πρέπει να εκτελέσετε τις εντολές που περιέχονται στο αρχείο.

Για την τακτική ανάκτηση δεδομένων, τέτοιες επιπλοκές δεν είναι απαραίτητες. Αρκεί να έχετε διαθέσιμο ένα δοκιμαστικό αρχείο, οι πληροφορίες στο οποίο θα είναι δομημένες με τον ίδιο τρόπο όπως στον πίνακα της βάσης δεδομένων: ο αριθμός των στηλών με πληροφορίες αντιστοιχεί στον αριθμό των χαρακτηριστικών εγγραφής πίνακα.

Για τους σκοπούς αυτούς, θα είναι κατάλληλο ένα κανονικό αρχείο txt, τα δεδομένα στα οποία θα διαχωριστούν ή αρχεία που δημιουργούνται σε ειδικούς επεξεργαστές υπολογιστικών φύλλων ( το γραφείο της Microsoft Excel, OpenOffice, κ.λπ.) με εξαιρετική επέκταση: xls, csv, odt κ.λπ.

Αυτές οι μορφές είναι ακόμη προτιμότερες, γιατί Κατά τη δημιουργία τους, οι οριοθέτες δεδομένων προστίθενται αυτόματα από τους συντάκτες και δεν χρειάζεται να εισάγονται ξεχωριστά, όπως στην περίπτωση ενός κανονικού αρχείου κειμένου.

Προσθήκη δεδομένων στη MySQL: Εργαλεία

Σχετικά με τα εργαλεία εισαγωγής μιας βάσης δεδομένων MySQL, μπορώ να πω ότι σήμερα υπάρχουν τρία από αυτά.

Θα τα απαριθμήσω, ξεκινώντας από το χαμηλότερο επίπεδο και τελειώνοντας στο υψηλότερο επίπεδο (από την άποψη της χρήσης όλων των ειδών κελύφους και πρόσθετων):

  1. Κονσόλα διακομιστή και γραμμή εντολών MySQL.
  2. Σενάρια γραμμένα σε γλώσσες προγραμματισμού που σας επιτρέπουν να καταγράφετε δεδομένα στη MySQL χρησιμοποιώντας γλωσσικά εργαλεία.
  3. Έτοιμα προγράμματα που παρέχουν μια οπτική διεπαφή για εργασία με τη βάση δεδομένων (το ίδιο phpMyAdmin, MySQL WorkBench, MySQL Manager κ.λπ.).

Νομίζω ότι η σειρά των εργαλείων δεν θα δημιουργήσει ερωτήσεις σε κανέναν, γιατί... Τα εργαλεία γλώσσας προγραμματισμού, κατά κανόνα, λειτουργούν με βάση τις εντολές της κονσόλας MySQL και τα προγράμματα βασίζονται σε σενάρια ή λειτουργούν απευθείας με τη MySQL από τη γραμμή εντολών.

Με τον ένα ή τον άλλο τρόπο, η κονσόλα βρίσκεται στην πρώτη γραμμή των πάντων και τα υπόλοιπα εργαλεία είναι, στην πραγματικότητα, οι εξομοιωτές της.

Επομένως, η χρήση της κονσόλας κατά την εισαγωγή δεδομένων στο MySQL σάς επιτρέπει να παρακάμψετε διάφορους περιορισμούς που ορίζονται από τις ρυθμίσεις των γλωσσών προγραμματισμού στο Διακομιστής Ιστούκαι τα ίδια τα προγράμματα (τα οποία, παρεμπιπτόντως, δεν μπορούν πάντα να αλλάξουν).

Λόγω αυτού, μπορείτε όχι μόνο να φορτώσετε μια βάση δεδομένων MySQL μέσω της κονσόλας πιο γρήγορα, αλλά και να κάνετε αυτή τη λειτουργία δυνατή κατ' αρχήν, επειδή Τα σενάρια και τα προγράμματα τείνουν να διακόπτουν τις εισαγωγές όταν συμπληρωθεί ο μέγιστος χρόνος εκτέλεσης του σεναρίου ή να μην ξεκινούν καθόλου λόγω του μεγέθους του ληφθέντος αρχείου.

Νομίζω ότι όλοι όσοι έχουν προσπαθήσει ποτέ να ανεβάσουν μια μεγάλη χωματερή σε μια βάση δεδομένων MySQL μέσω phpMyAdmin καταλαβαίνουν για τι πράγμα μιλάω.

Συχνά αυτά τα όρια είναι η αιτία σφαλμάτων κατά την εισαγωγή μιας βάσης δεδομένων MySQL, τα οποία δεν θα δείτε ποτέ όταν χρησιμοποιείτε την κονσόλα.

Φυσικά, δεν είναι σταθερά και μπορούν να αλλάξουν, αλλά αυτός είναι ένας επιπλέον πονοκέφαλος, ο οποίος, παρεμπιπτόντως, μπορεί να μην είναι επιλύσιμος για τους απλούς χρήστες.

Ελπίζω ότι σας παρακίνησα να εισαγάγετε τη βάση δεδομένων MySQL μέσω της κονσόλας (τόσο της δομής όσο και των μεμονωμένων δεδομένων).

Και σε αυτή τη θετική νότα, προχωράμε στην πολυαναμενόμενη πρακτική και εξετάζουμε μεθόδους και εντολές για τη μεταφορά δεδομένων από την κονσόλα στη βάση δεδομένων.

Πώς να επαναφέρετε μια βάση δεδομένων MySQL από μια ένδειξη αποθήκευσης μέσω της κονσόλας;

Έτσι, για να αναπτύξετε μια ένδειξη MySQL από την κονσόλα, υπάρχουν δύο τρόποι:

  1. χρησιμοποιώντας την εντολή in γραμμή εντολών MySQL;
  2. στην ίδια την κονσόλα διακομιστή.

Ας ξεκινήσουμε με τη σειρά.

Έτσι, για να εισαγάγουμε μια ένδειξη απόρριψης βάσης δεδομένων MySQL σε έναν υπάρχοντα χώρο αποθήκευσης μέσω του , πρέπει πρώτα να την εκκινήσουμε και να επιλέξουμε την επιθυμητή βάση δεδομένων στην οποία θα ανεβάσουμε το dump μας.

Η υλοποίηση αυτών των ενεργειών περιγράφεται λεπτομερώς στο άρθρο που αναφέρεται παραπάνω, οπότε αν χρειάζεστε μια περιγραφή τους, πάρτε τις από εκεί, γιατί Δεν θέλω να τα επαναλάβω για τον δεύτερο γύρο.

Αφού κάνετε τα παραπάνω, πληκτρολογήστε την ακόλουθη εντολή στο MySQL Shell:

Πηγή path_and_dump_file_name;

Το μόνο που μας μένει είναι να μελετήσουμε τα μηνύματα στην κονσόλα σχετικά με την πρόοδο των λειτουργιών που περιέχονται στο dump.

Χωρίς να μεταβείτε πρώτα στην επιθυμητή βάση δεδομένων, μετά τη σύνδεση στον διακομιστή MySQL στην κονσόλα, το dump μπορεί να εισαχθεί με την ακόλουθη εντολή:

Mysql -u όνομα χρήστη -p database_name< путь_и_имя_файла_дампа

Αυτό είναι όλο. Το κύριο πράγμα είναι να περιμένετε να ολοκληρωθεί η εισαγωγή εάν το αρχείο είναι πολύ μεγάλο. Η ολοκλήρωση του dump μπορεί να κριθεί από το πότε η κονσόλα διακομιστή είναι ξανά διαθέσιμη.

Στην πραγματικότητα, αυτό είναι το μειονέκτημα αυτή τη μέθοδοσε σχέση με την προηγούμενη, γιατί Στην πρώτη είναι δυνατή η παρακολούθηση των λειτουργιών που εκτελούνται στη βάση δεδομένων κατά την εισαγωγή, αλλά στη δεύτερη δεν είναι.

Εάν το αρχείο ένδειξης σφαλμάτων είναι συσκευασμένο σε ένα αρχείο, τότε κατά τη λήψη θα πρέπει να αποσυσκευαστεί ταυτόχρονα.

Στο Linux αυτό μπορεί να γίνει ως εξής:

Gunzip > [archive_file_name.sql.gz] | mysql -u -p

ΣΕ Πρότυπο WindowsΔεν υπάρχει βοηθητικό πρόγραμμα για την αποσυσκευασία του αρχείου στην κονσόλα, επομένως θα χρειαστεί να εγκατασταθεί επιπλέον.

Όπως μπορείτε να δείτε, η εισαγωγή μιας ένδειξης MySQL dump μέσω της κονσόλας είναι μια πολύ απλή λειτουργία, η οποία εκτελείται με μία εντολή. Επομένως, δεν χρειάζεται να είστε προγραμματιστής για να εκτελέσετε αυτήν τη διαδικασία.

Εάν ξαφνικά δεν ξέρετε πώς να εκκινήσετε την κονσόλα διακομιστή, μπορείτε να βρείτε αυτές τις πληροφορίες στο άρθρο σχετικά με τη γραμμή εντολών MySQL, τον σύνδεσμο στον οποίο έχω ήδη δημοσιεύσει νωρίτερα.

Παρεμπιπτόντως, χρησιμοποιώντας τις περιγραφόμενες μεθόδους είναι επίσης δυνατή η εισαγωγή ενός πίνακα MySQL και όχι ολόκληρης της βάσης δεδομένων. Σε αυτήν την περίπτωση, το dump που ανεβάζετε πρέπει να περιέχει τις λειτουργίες δημιουργίας και πλήρωσής του με δεδομένα.

Φόρτωση δεδομένων σε μια βάση δεδομένων MySQL από ένα αρχείο στην κονσόλα

Μιλήσαμε για την επαναφορά μιας βάσης δεδομένων MySQL από ένα dump στην κονσόλα. Τώρα είναι η ώρα να καταλάβετε πώς μπορείτε να εισάγετε δεδομένα από αρχεία, συμπεριλαμβανομένων των xls και csv, σε μια βάση δεδομένων MySQL με τον ίδιο τρόπο.

Για αυτήν την εργασία, έχουμε και πάλι τα ίδια δύο εργαλεία όπως στην προηγούμενη περίπτωση: τη γραμμή εντολών MySQL και την κονσόλα διακομιστή.

Ας ξεκινήσουμε πάλι την ανασκόπηση με τη σειρά.

Έτσι, για να εισαγάγουμε ένα αρχείο στη γραμμή εντολών της MySQL, το τρέχουμε ξανά και πηγαίνουμε στη βάση δεδομένων στην οποία θα φορτωθούν τα δεδομένα.

LOAD INFILE DATA INFILE "path_and_name_of_dump_file" ΣΕ ΣΤΗΛΕΣ ΠΙΝΑΚΑΣ `database_table` TERMINATED BY "," ΠΕΡΙΒΑΛΛΟΜΕΝΑ ΑΠΟ "\"" LINES TERMINATED by "\n";

Μην ξεχνάτε ότι εάν ο διακομιστής MySQL ξεκίνησε με την επιλογή --secure-file-priv(που συχνά συμβαίνει όταν χρησιμοποιώντας MySQLδιανομές που περιλαμβάνονται σε συγκροτήματα WAMP/MAMP), τότε το όνομα αρχείου πρέπει να καθοριστεί λαμβάνοντας υπόψη τη μεταβλητή συστήματος safe_file_priv.

Για να εισαγάγουμε μια βάση δεδομένων MySQL στην κονσόλα διακομιστή χωρίς να μεταβούμε στο MySQL Shell, θα χρειαστούμε το βοηθητικό πρόγραμμα mysqlimport, που περιλαμβάνεται στη διανομή MySQL και την ακόλουθη κλήση:

mysqlimport –u user_name –p database_name name_and_path_to_import_file

Αυτό το βοηθητικό πρόγραμμαείναι ανάλογο με την εντολή SQL LOAD INFILE DATA, μόνο για τη γραμμή εντολών. Όμως, τίθεται το ερώτημα, γιατί τότε, μεταξύ των παραμέτρων της κλήσης του, δεν είναι ο πίνακας στον οποίο θα φορτωθούν τα δεδομένα από το αρχείο;

Το γεγονός είναι ότι το mysqlimport απλά δεν έχει φυσικά αυτή η παράμετρος. Αντίθετα, το όνομα του πίνακα στον οποίο θα φορτωθούν τα δεδομένα πρέπει να εμφανίζεται στο όνομα του εισαγόμενου αρχείου.

Εκείνοι. εάν θέλετε να κάνετε εισαγωγή από πίνακες Excelστον πίνακα MySQL χρήστες, τότε θα πρέπει να κληθεί το αρχείο σας χρήστες.xls.

Η επέκταση του εισαγόμενου αρχείου, όπως ήδη αναφέρθηκε, μπορεί να είναι οτιδήποτε.

Με το mysqlimport μπορείτε επίσης να κάνετε λήψη πολλών xls αρχείαή csv στη MySQL. Για να φτάσουν τα δεδομένα στον προορισμό τους, τα ονόματα των αρχείων και των πινάκων βάσης δεδομένων, όπως στο προηγούμενο παράδειγμα, πρέπει επίσης να ταιριάζουν.

Εάν ξαφνικά οι στήλες στο εισαγόμενο αρχείο δεν έχουν την ίδια σειρά με τις στήλες του πίνακα της βάσης δεδομένων, τότε για να διευκρινίσετε τη σειρά τους πρέπει να χρησιμοποιήσετε την επιλογή —στήλες με την ακόλουθη μορφή:

Mysqlimport –u user_name –p database_name --collumns column1, column2, ... name_and_path_to_import_file

Φυσικά, στα παραδείγματά μου δεν το έλαβα υπόψη πλήρης λίσταπαραμέτρους mysqlimport, επειδή μερικά από αυτά είναι πολύ συγκεκριμένα και χρησιμοποιούνται εξαιρετικά σπάνια στην πράξη.

Εάν θέλετε να εξοικειωθείτε μαζί τους, η πλήρης λίστα τους είναι διαθέσιμη εδώ - https://dev.mysql.com/doc/refman/5.7/en/mysqlimport.html

Δυνατότητες φόρτωσης δεδομένων σε μια βάση δεδομένων MySQL από μια χωματερή

Εάν θέλετε η διαδικασία εισαγωγής μιας μεγάλης βάσης δεδομένων MySQL να προχωρήσει γρηγορότερα, τότε πρέπει να δημιουργήσετε ένα απόσπασμα βάσης δεδομένων χρησιμοποιώντας ειδικές επιλογέςτις εντολές mysqldump, για τις οποίες έγραψα στο προηγούμενο άρθρο μου σχετικά με την εξαγωγή της βάσης δεδομένων MySQL, τον σύνδεσμο στον οποίο δημοσίευσα στο κείμενο νωρίτερα.

Δυστυχώς, οι ίδιες οι εντολές εισαγωγής της βάσης δεδομένων MySQL δεν έχουν τέτοιες επιλογές.

Το μόνο πράγμα είναι ότι για να αυξήσετε την ταχύτητα κατά τη φόρτωση μιας μεγάλης ένδειξης δεδομένων βάσης δεδομένων, μπορείτε να χρησιμοποιήσετε την ακόλουθη δυνατότητα.

1. Ανοίξτε το αρχείο ένδειξης σφαλμάτων (κατά προτίμηση στο διαχειριστές αρχείων, επειδή οι κανονικοί συντάκτες μπορούν απλά να κατακλυζονται από μεγάλα αρχεία).

2. Γράψτε τις ακόλουθες γραμμές στην αρχή του αρχείου:

ΣΕΤ ξένων_κλειδιών_ελέγχων = 0; SET UNIQUE_CHECKS = 0; SET AUTOCOMMIT = 0;

Σημείωση! Μπορεί να είναι ήδη εκεί ή να έχουν σχολιαστεί (πολλά προγράμματα που κάνουν dumps μπορούν να τα προσθέσουν αυτόματα)

3. Στο τέλος του αρχείου γράφουμε τις αντίστροφες ενέργειες:

ΣΕΤ ξένων_κλειδιών_ελέγχων = 1; SET UNIQUE_CHECKS = 1; SET AUTOCOMMIT = 1;

Παρεμπιπτόντως, αυτές οι εντολές θα βοηθήσουν όχι μόνο να επιταχύνουν τη διαδικασία εισαγωγής, αλλά και να την καταστήσουν δυνατή.

Το γεγονός είναι ότι αν έχετε κοιτάξει ποτέ το αρχείο ένδειξης σφαλμάτων για την εισαγωγή μιας βάσης δεδομένων MySQL, μπορεί να έχετε παρατηρήσει ότι η λειτουργία της ρύθμισης της δομής των φορτωμένων πινάκων μοιάζει με αυτό:

ΑΠΟΣΤΟΛΗ ΠΙΝΑΚΑ ΑΝ ΥΠΑΡΧΕΙ «πελάτες». ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ «πελάτες» (...);

Εκείνοι. εκτελείται αναζήτηση στη βάση δεδομένων για έναν πίνακα με το ίδιο όνομα με αυτόν που εισάγεται, και εάν βρεθεί, διαγράφεται και δημιουργείται εκ νέου.

Και αν ξαφνικά ένας υπάρχων πίνακας συνδεθεί με ξένα κλειδιά με άλλα, τότε ολόκληρη η φόρτωση θα αποτύχει.

Επομένως, η απενεργοποίηση του ελέγχου για την ύπαρξη ξένων κλειδιών και άλλων είναι επίσης μια εξαιρετική εγγύηση για την επιτυχή ολοκλήρωση της διαδικασίας εισαγωγής της βάσης δεδομένων MySQL.

Δυνατότητες εισαγωγής csv στη βάση δεδομένων MySQL και σε άλλα αρχεία

Κατά τη φόρτωση δεδομένων σε μια βάση δεδομένων MySQL από αρχεία κειμένουΜπορεί επίσης να χρειαστεί να απενεργοποιήσετε τα ξένα κλειδιά.

Επιπλέον, σε αντίθεση με την προηγούμενη κατάσταση, σε αυτήν την περίπτωση δεν θα είναι δυνατή η εγγραφή οδηγιών στο αρχείο, επειδή Οι εντολές SQL σε αυτό δεν θα γίνονται δεκτές και δεν θα εκτελούνται.

Σε προηγούμενο άρθρο σχετικά με την εξαγωγή μιας βάσης δεδομένων MySQL, ανέφερα ήδη πώς να το κάνετε αυτό χρησιμοποιώντας την ακόλουθη λειτουργία στη γραμμή εντολών MySQL:

SET FOREIGN_KEY_CHECKS=0;

Ωστόσο, δεν ανέφερα εκεί τη μεταβλητή συστήματος MySQL ΞΕΝΑ_ΚΛΕΙΔΙ_ΕΛΕΓΧΟΙέχει δύο έννοιες: καθολική και συνεδριακή (για την τρέχουσα συνεδρία).

Η καθολική τιμή των μεταβλητών MySQL είναι έγκυρη για οποιαδήποτε ενέργεια στον διακομιστή MySQL μέχρι να γίνει επανεκκίνηση. Στη συνέχεια, οι τιμές των μεταβλητών θα επαναφερθούν και θα τους εκχωρηθούν προεπιλεγμένες τιμές.

Η τιμή περιόδου λειτουργίας της μεταβλητής συστήματος MySQL ορίζεται μόνο για τη διάρκεια της περιόδου σύνδεσης του χρήστη με τον διακομιστή MySQL. Μια περίοδος λειτουργίας ή περίοδος λειτουργίας ξεκινά όταν ένας πελάτης συνδέεται με τον διακομιστή, οπότε και του εκχωρείται ένα μοναδικό αναγνωριστικό σύνδεσης, και τελειώνει όταν αποσυνδεθεί από τον διακομιστή, κάτι που μπορεί να συμβεί ανά πάσα στιγμή (για παράδειγμα, λόγω χρονικού ορίου).

Γιατί αποφάσισα να το θυμηθώ;

Επειδή κατά την εκτέλεση εντολών για τη φόρτωση ενός αρχείου σε μια βάση δεδομένων MySQL μέσω της κονσόλας διακομιστή, χωρίς να μπω στο κέλυφος της MySQL, ανακάλυψα ότι η απενεργοποίηση του ελέγχου ξένου κλειδιού χρησιμοποιώντας τη μέθοδο που περιγράφηκε προηγουμένως δεν λειτουργεί.

Η κονσόλα εξακολουθούσε να εμφανίζει ένα μήνυμα σφάλματος που προκαλείται από την παρουσία ξένων κλειδιών στον πίνακα.

Και προέκυψε για το λόγο ότι η παραπάνω εντολή απενεργοποίησε τον έλεγχο για την ύπαρξη ξένων κλειδιών εντός της συνεδρίας και όχι καθολικά, ο οποίος, εκτός από την υποδεικνυόμενη μέθοδο, μπορεί να εκτελεστεί και ως εξής:

SET SESSION variable_name = variable_value; SET @@session.variable_name = variable_value; SET @@variable_name = variable_value;

Στις παραπάνω εντολές, η μεταβλητή επισημαίνεται ξεκάθαρα ως περίοδος λειτουργίας.

Α, γιατί φόρτωνα αρχείο csvσε έναν πίνακα MySQL μέσω της κονσόλας διακομιστή, χωρίς άμεση σύνδεση Διακομιστής MySQL, τότε δεν δημιουργήθηκε μια περίοδος λειτουργίας εντός της οποίας θα λειτουργούσε η τιμή της μεταβλητής συνεδρίας μου.

Κατέληξα να ορίσω το FOREIGN_KEY_CHECKS σε καθολικό και η εισαγωγή ήταν επιτυχής.

Μπορείτε να το κάνετε αυτό με έναν από τους παρακάτω τρόπους:

SET GLOBAL variable_name = variable_value. SET @@global.variable_name = variable_value;

Αφού αλλάξετε τις τιμές, είναι καλή ιδέα να ελέγξετε τις τιμές της μεταβλητής για να επαληθεύσετε ότι οι αλλαγές τέθηκαν σε ισχύ. Για την ταυτόχρονη εμφάνιση συνεδριών και καθολικών τιμών, χρησιμοποιήστε την ακόλουθη εντολή:

SELECT @@GLOBAL.foreign_key_checks, @@SESSION.foreign_key_checks;

Αυτό ολοκληρώνει το σημερινό άρθρο σχετικά με την εισαγωγή μιας βάσης δεδομένων MySQL. Μοιραστείτε τις εντυπώσεις σας και τις δικές σας εξελίξεις στα σχόλια. Νομίζω ότι πολλοί θα ενδιαφέρονται για την εμπειρία σας.

Τα λέμε! 🙂

ΥΣΤΕΡΟΓΡΑΦΟ.: εάν χρειάζεστε έναν ιστότοπο ή θέλετε να κάνετε αλλαγές σε έναν υπάρχοντα, αλλά δεν υπάρχει χρόνος ή επιθυμία για αυτό, μπορώ να προσφέρω τις υπηρεσίες μου.

Περισσότερα από 5 χρόνια εμπειρίαανάπτυξη επαγγελματικής ιστοσελίδας. Δουλεύω με PHP, OpenCart,