Introduction à MySQL Server
Qu'est-ce que MySQL Server?
Il existe de nombreux SGBDR (systèmes) disponibles sur le marché pour la gestion des bases de données, le plus populaire d'entre eux étant MySQL. MySQL est un système de gestion de base de données relationnelle open source (RDBMS) et il est basé sur le langage de requête structuré (SQL - qui est un langage pour gérer la base de données et effectuer des opérations CRUD telles que créer, lire, mettre à jour et supprimer.). nous discutons ici du serveur MySQL.
MySQL, un bref voyage:
- Il a été créé et détenu pour la première fois par une société suédoise nommée MySQL AB avec sa première version initiale en 1995, le 23 mai.
- En 2008, MySQL AB a été acquis par Sun Microsystems dans le cadre d'un contrat d'un milliard.
- En 2010, Sun Microsystems a été acquis par Oracle.
- La dernière version du serveur MySQL est la 8.0, sortie le 19 avril 2018.
MySQL peut virtuellement fonctionner sur n'importe quelle plate-forme telle que Linux, Solaris et Windows et c'est le SGBDR le plus populaire et le plus largement utilisé car il s'agit d'un serveur de base de données open source et gratuit qui fournit des fonctionnalités de base de données très avancées.
Voici quelques exemples d'utilisation de MySQL Server:
- Google, Facebook, Yahoo et de nombreux autres géants de la technologie ont utilisé MySQL pour améliorer leurs capacités de traitement des données.
- MySQL est un composant très important pour LAMP qui est une plate-forme de développement Web avec Linux comme système d'exploitation, Apache comme serveur Web, MySQL comme RDBMS et PHP comme langage de programmation. Néanmoins, Python ou Perl peuvent être utilisés aussi bien que PHP comme langage de programmation ou de script.
- Il peut être utilisé partout, où les données doivent être stockées de manière relationnelle, c'est-à-dire dans un format tabulaire. Chaque table a une clé primaire et les lignes peuvent être reliées les unes aux autres à l'aide de cette clé primaire.
Avantages de MySQL Server:
-
Portable -
Il peut fonctionner sur un grand nombre de plateformes comme UNIX, Solaris, Windows, OS / 2, etc.
-
Open source -
Plus important encore, MySQL est mis à la disposition de tous en tant que logiciel open source et n'importe qui peut l'utiliser gratuitement en acceptant ses termes et conditions.
-
Sécurité -
Toutes les bases de données MySQL sont très sécurisées et sont verrouillées avec des mots de passe chiffrés à l'aide d'algorithmes complexes et il n'est jamais facile de les violer.
-
Connectivité -
Il existe un bon nombre de mécanismes disponibles pour se connecter aux serveurs MySQL tels que TCP / IP, Sockets UNIX et canaux nommés
-
Mises à jour régulières et développement continu-
Étant une plate-forme open source, MySQL possède une énorme communauté de développeurs et ils publient régulièrement des correctifs et des mises à jour pour MySQL.
Architecture du serveur MySQL:
L'architecture de MySQL se compose principalement des composants suivants:
- Serveur MySQL
- Clients MySQL
- Répertoire de données
- Moteur de stockage
MySQL est basé sur un modèle client-serveur.
Source: http://actimem.com/wp-content/uploads/2015/09/mysql.png.webp?x78177
Serveur MySQL:
Il s'agit d'une instance MySQL où les données réelles sont stockées et traitées. Ce composant est responsable du traitement des requêtes entrantes provenant des clients MySQL et manipule les tables de base de données. Il est également responsable de l'acceptation des connexions aux bases de données provenant des clients MySQL. Les programmes importants du composant MySQL Server sont:
-
MySQL:
Il s'agit d'un programme démon de serveur MySQL. Il s'exécute en arrière-plan et gère les demandes des clients MySQL.
-
mysqld_safe:
Il s'agit d'un programme qui redémarre le serveur chaque fois qu'une erreur se produit. Il s'agissait d'une caractéristique de sécurité de ce programme, l'autre est qu'il conserve les journaux des informations d'exécution dans un journal des erreurs.
-
mysql.server:
Il s'agit d'un utilitaire MySQL qui a été fourni pour démarrer le script mysqld_safe.
-
mysqld_multi:
Ce programme est utilisé pour gérer de nombreux processus mysqld qui écoutent les connexions sur différents canaux de connexion comme TCP / IP, UNIX Sockets, etc.
Clients MySQL:
Les clients MySQL sont essentiellement les utilitaires utilisés pour communiquer avec le serveur MySQL. En d'autres termes, ce sont les programmes qui communiquent avec le serveur MySQL. Des exemples de clients MySQL sont des programmes comme Perl, PHP, Java, MySQL, mysqladmin et des outils tels que MySQL dump, mysqlcheck, myisamchk. Les programmes importants sous les clients MySQL sont:
- MySQL est un shell SQL où l'on peut écrire et exécuter des instructions SQL. Il peut être interactif ou non interactif. Lorsqu'ils sont utilisés de manière interactive, les résultats sont renvoyés dans un format tabulaire tandis que l'utilisation non interactive renvoie le résultat dans un format séparé par des tabulations.
- mysqladmin est un client pour l'administration du serveur MySQL. Il peut être utilisé pour vérifier les fichiers de configuration, les mettre à jour, pour vérifier l'état actuel du serveur, mais aussi pour créer et supprimer les bases de données, etc.
- mysqldump est un utilitaire client et un programme de sauvegarde de base de données qui effectue des sauvegardes logiques.
- mysqlcheck et myisamchk sont des clients qui sont utilisés pour effectuer la maintenance des tables de base de données comme la réparation, l'optimisation et l'analyse des tables.
Répertoire de données:
Le répertoire de données contient les données réelles qui sont stockées à la suite d'opérations en cours sur toutes les applications / logiciels ou serveurs. Il comprend des bases de données, des tables, des fichiers journaux, des procédures stockées, etc.
- L'emplacement par défaut pour datadir sous Linux est: / var / lib / mysql
- L'emplacement par défaut pour datadir dans Windows est: C: \ ProgramData \ MySQL \ MySQL Server 5.8
- Le nom du fichier de configuration qui contient le chemin pour datadir est mysqld.cnf
- cnf peut être trouvé à /etc/mysql/mysql.conf.d/mysqld.cnf
- Il est en effet possible de changer l'emplacement de stockage pour datadir au cas où quelqu'un manquerait d'espace alloué. Veuillez parcourir l'article ci-dessous qui explique magnifiquement comment cela peut être réalisé:
https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04
Moteur de stockage:
Un moteur de stockage est un module logiciel utilisé par le SGBDR pour effectuer des opérations CRUD (créer, lire, mettre à jour et supprimer).
Les moteurs de stockage sont de deux types dans MySQL:
- Transactionnel
- Non transactionnel
La principale différence entre le moteur de stockage transactionnel et non transactionnel est que les tables transactionnelles enregistreront toutes les opérations de base de données dans un fichier journal, donc même si MySQL plante, vous pouvez toujours récupérer vos données alors que ce n'est pas le cas avec les moteurs non transactionnels. Néanmoins, pour souligner, les moteurs non transactionnels sont beaucoup plus rapides et ont également des besoins en espace disque inférieurs. Voici quelques-uns des moteurs de stockage utilisés par MySQL, le plus largement utilisé est InnoDB.
Moteurs de stockage pris en charge par MySQL:
- InnoDB
- MyISAM
- Mémoire
- CSV
- Fusionner
- Archiver
- Fédéré
- Trou noir
- Exemple
Articles recommandés
Cela a été un guide pour le serveur MySQL. Ici, dans cet article, nous avons étudié les exemples, les avantages et l'architecture du serveur MySQL. Vous pouvez également consulter les articles suivants pour en savoir plus -
- Aide-mémoire MySQL
- Qu'est-ce que Tableau Server?
- MySQL vs SQL Server