Τι είναι η MySQL; Πώς λειτουργεί η MySQL;


Το MySQL είναι το πιο δημοφιλές στον κόσμο σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων ανοιχτού κώδικα για επιχειρήσεις (RDBMS) που χρησιμοποιείται στα Facebook, Google, Adobe, Alcatel Lucent και Zappos, και από πολλούς διαδικτυακούς ιστότοπους/εφαρμογές.

Αναπτύσσεται, διανέμεται και υποστηρίζεται από την Oracle Corporation. Πρόκειται για μια διαπλατφορμική, ισχυρή, ευέλικτη και επεκτάσιμη σχεσιακή βάση δεδομένων που βασίζεται στην τυποποιημένη γλώσσα SQL (Structured Query Language) που χρησιμοποιείται για τη δημιουργία και το χειρισμό βάσεων δεδομένων.

Η πιο πρόσφατη έκδοση του MySQL (έκδοση 8.0 τη στιγμή της σύνταξης) συνοδεύεται από υποστήριξη για NoSQL (\Όχι μόνο SQL<”) βάσεις δεδομένων εγγράφων. Μπορεί να εγκατασταθεί σε Linux, macOS και άλλα λειτουργικά συστήματα παρόμοια με το UNIX και Windows.

Λήψη MySQL

  • Λήψη MySQL Community Edition
  • Λήψη MySQL Enterprise Edition

Το λογισμικό βάσης δεδομένων MySQL είναι ανοιχτού κώδικα, χρησιμοποιεί την GPL (GNU General Public License). Είναι σημαντικό ότι προσφέρεται σε δύο διαφορετικές εκδόσεις: τον ανοιχτού κώδικα MySQL Community Server τον οποίο μπορείτε να κατεβάσετε, να αποκτήσετε πρόσβαση στον πηγαίο κώδικα και να χρησιμοποιήσετε δωρεάν και το ιδιόκτητο MySQL Enterprise έκδοση και άλλα εμπορικά προϊόντα που απαιτούν ετήσια συνδρομή και περιλαμβάνουν επαγγελματική υποστήριξη και πολλά άλλα οφέλη.

Η MySQL χρησιμοποιείται για ένα ευρύ φάσμα σκοπών, όπως η βάση δεδομένων ιστού (η πιο κοινή χρήση), η αποθήκευση δεδομένων, το ηλεκτρονικό εμπόριο και οι εφαρμογές καταγραφής. Είναι ένα από τα κοινά εγκατεστημένα λογισμικά για τη ρύθμιση ενός LAMP (Linux + Apache + MySQL + PHP) ή LEMP (Linux + Engine-X + MySQL + PHP ) στοίβα που χρησιμοποιείται για την ανάπτυξη ιστού και τη φιλοξενία διαδικτυακών συστημάτων διαχείρισης περιεχομένου όπως WordPress, Magneto, Joomla, Drupal<, και πολλά άλλα. Εκτός από την PHP, υποστηρίζει επίσης πολλές άλλες γλώσσες, όπως Perl, Node.js, Python και ούτω καθεξής.

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

  • Τρόπος εγκατάστασης του διακομιστή LAMP στο CentOS 8
  • Πώς να εγκαταστήσετε τον διακομιστή LEMP στο CentOS 8
  • Πώς να εγκαταστήσετε το LAMP Stack με το PhpMyAdmin στο Ubuntu 20.04
  • Πώς να εγκαταστήσετε το LEMP Stack με το PhpMyAdmin στο Ubuntu 20.04
  • Πώς να εγκαταστήσετε το WordPress με το Apache στο Ubuntu 20.04

Πώς λειτουργεί η MySQL;

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

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

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

Βασικά χαρακτηριστικά της MySQL

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

  • Η MySQL χρησιμοποιεί πολύ γρήγορους πίνακες B-tree με συμπίεση ευρετηρίου, ένα πολύ γρήγορο σύστημα κατανομής μνήμης που βασίζεται σε νήματα και εκτελεί πολύ γρήγορες συνδέσεις χρησιμοποιώντας βελτιστοποιημένη ένωση ένθετου βρόχου.
  • Υποστηρίζει πολλούς τύπους δεδομένων, όπως υπογεγραμμένους/ανυπόγραφους ακέραιους αριθμούς, τύπους κινητής υποδιαστολής (float και double), char και varchar, binary and varbinary, blob and text, Date, DateTime και timestamp, year, set, enum, και χωρικοί τύποι OpenGIS.
  • Η MySQL υποστηρίζει επίσης πλεονασμό δεδομένων και υψηλή διαθεσιμότητα (HA) μέσω αναπαραγωγής master-slave, ομαδοποίησης πολλών κόμβων και δημιουργίας αντιγράφων ασφαλείας και ανάκτησης/επαναφοράς. Προσφέρει ένα ευρύ φάσμα τύπων και στρατηγικών δημιουργίας αντιγράφων ασφαλείας από τις οποίες μπορείτε να επιλέξετε τις μεθόδους που ταιριάζουν καλύτερα στις απαιτήσεις για την ανάπτυξή σας.
  • Τα χαρακτηριστικά ασφαλείας του περιλαμβάνουν διαχείριση λογαριασμού χρήστη και έλεγχο πρόσβασης, επαλήθευση βάσει κεντρικού υπολογιστή, κρυπτογραφημένες συνδέσεις, διάφορα στοιχεία και προσθήκες (όπως προσθήκες ελέγχου ταυτότητας, προσθήκες ελέγχου σύνδεσης, στοιχείο επικύρωσης κωδικού πρόσβασης και πολλά άλλα) που εφαρμόζουν ασφάλεια, όπως καθώς και τη λειτουργία FIPS (Ομοσπονδιακά Πρότυπα Επεξεργασίας Πληροφοριών 140-2 (FIPS 140-2)) στην πλευρά του διακομιστή, η οποία ισχύει για κρυπτογραφικές λειτουργίες που εκτελούνται από τον διακομιστή.

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

MySQL Client and Tools

Η MySQL συνοδεύεται από πολλά προγράμματα-πελάτες, όπως τα δημοφιλή βοηθητικά προγράμματα της γραμμής εντολών: mysql, mysqldump, για τη διαχείριση βάσεων δεδομένων. Για να συνδεθούν στον MySQL Server, οι πελάτες μπορούν να χρησιμοποιήσουν πολλά πρωτόκολλα, για παράδειγμα, υποδοχές TCP/IP σε οποιαδήποτε πλατφόρμα ή υποδοχές τομέα UNIX σε συστήματα UNIX όπως το Linux.

Για να συνδέσετε και να εκτελέσετε δηλώσεις MySQL από άλλη γλώσσα ή περιβάλλον, υπάρχουν υποδοχές MySQL που βασίζονται σε πρότυπα (που παρέχουν συνδεσιμότητα με τον διακομιστή MySQL για εφαρμογές πελάτη) και API για τις πιο δημοφιλείς γλώσσες προγραμματισμού (για την παροχή πρόσβασης χαμηλού επιπέδου σε πόρους MySQL χρησιμοποιώντας είτε το κλασικό πρωτόκολλο MySQL είτε το X Protocol).

Ορισμένες από τις δημοφιλείς εφαρμογές σύνδεσης και API περιλαμβάνουν ODBC (Open Database Connectivity), Java (JDBC – Java Database Connectivity), Python, PHP, Node.js, C++, Perl, Ruby και εγγενείς παρουσίες C και ενσωματωμένη MySQL.

Θα βρείτε χρήσιμα τα ακόλουθα άρθρα σχετικά με τη MySQL:

  • Πώς να εγκαταστήσετε την τελευταία MySQL 8 στο Debian 10
  • 15 χρήσιμες συμβουλές συντονισμού και βελτιστοποίησης απόδοσης MySQL/MariaDB
  • Χρήσιμες συμβουλές για την αντιμετώπιση κοινών σφαλμάτων στη MySQL
  • Τρόπος επαναφοράς του κωδικού πρόσβασης ρίζας στο MySQL 8.0
  • Πώς να αλλάξετε την προεπιλεγμένη θύρα MySQL/MariaDB στο Linux
  • 4 χρήσιμα εργαλεία γραμμής εντολών για την παρακολούθηση της απόδοσης της MySQL στο Linux