Maison  >  Article  >  base de données  >  Construction d'un cluster MySQL

Construction d'un cluster MySQL

王林
王林original
2023-05-20 11:03:108375parcourir

MySQL est l'un des systèmes de gestion de bases de données relationnelles les plus populaires, mais un seul serveur MySQL présente des goulots d'étranglement en termes de performances et des problèmes de fiabilité. Afin de répondre aux exigences de charge élevée et de fiabilité élevée, le cluster MySQL peut être utilisé pour résoudre ces problèmes.

MySQL Cluster est un moyen permettant à plusieurs instances de serveur MySQL de fonctionner et de s'exécuter ensemble sur des appareils physiques ou virtuels, offrant des performances et une fiabilité élevées en partageant la charge et en améliorant la disponibilité. Cet article explique comment créer un cluster MySQL.

1. Composants du cluster MySQL

Le cluster MySQL est principalement composé des composants suivants :

  1. MySQL Server : Le serveur MySQL dans le cluster peut avoir différentes versions et configurations. Chaque instance du serveur MySQL s'exécute sur un appareil physique ou virtuel différent.
  2. MySQL Cluster Manager (MCM) : un ensemble d'outils pour gérer les instances de serveur MySQL dans les clusters MySQL Avec l'aide de MCM, les clusters MySQL peuvent être facilement configurés, déployés, surveillés et gérés.
  3. Nœuds de données : chaque nœud de données est une instance de serveur MySQL utilisée pour stocker des données et exécuter des requêtes. MySQL Cluster utilise le moteur de stockage NDB pour traiter les données de mémoire et de disque.
  4. Nœuds de gestion : les nœuds de gestion sont des nœuds qui effectuent des tâches de gestion et contrôlent la configuration du cluster MySQL. Chaque cluster MySQL nécessite au moins un nœud de gestion.
  5. Nœuds SQL : les nœuds SQL sont des clients utilisés pour interagir avec le cluster MySQL. MySQL Cluster ne fournit pas de nœuds SQL prêts à l'emploi. Vous devez utiliser une instance de MySQL Server comme nœud SQL.

2. Construction du cluster MySQL

Avant de commencer, assurez-vous que le serveur MySQL a été installé et configuré et que plusieurs nœuds informatiques sont prêts. Pour plus de simplicité, dans l'exemple suivant, un cluster MySQL sera configuré avec 3 nœuds MySQL Server et 2 nœuds de gestion. Chaque nœud est équipé de MySQL Server 8.0.25 et utilise le système d'exploitation CentOS 8.

  1. Installer MySQL Cluster Manager

Étant donné que MySQL Cluster Manager (MCM) est un élément clé de la configuration et de la gestion du cluster MySQL, vous devez d'abord installez-le sur chaque Installer MCM sur le nœud. MCM peut être téléchargé depuis le site officiel de MySQL.

Après le téléchargement, exécutez la commande suivante pour installer :

sudo rpm -ivh mysql-cluster-manager-1.4.10-linux-glibc2.12-x86_64.rpm# 🎜 🎜#

    Configuration de MySQL Cluster Manager
Après l'installation de MCM, une configuration initiale est requise. Faites-le sur l'un des nœuds, ce nœud deviendra le nœud de gestion.

Exécutez la commande suivante pour initialiser MCM :

sudo /opt/mysql/mcm/bin/setup --config-file=/etc/mysql/mcm.ini - -yes

Cette commande créera le fichier /etc/mysql/mcm.ini et initialisera MCM en mode autonome selon les paramètres par défaut. Si vous devez utiliser plusieurs nœuds dans votre cluster, vous pouvez ajouter d'autres nœuds dans ce fichier.

    Configuration des nœuds de données
Tout d'abord, vous devez installer mysql-community-server sur tous les nœuds, puis arrêter le service mysqld.

Ensuite, créez un nouvel exemple de serveur MySQL afin qu'il puisse être utilisé comme nœud de données. Cette nouvelle instance peut être créée à partir d'une installation mysqld existante. Dans cet exemple, vous pouvez utiliser la version 8.0.25 pour créer une nouvelle instance de serveur MySQL à l'aide de la commande suivante :

sudo /usr/sbin/mysqld --defaults-file=/etc/my_node1.cnf --initialize-insecure --ignore-builtin-innodb

Cette commande créera une nouvelle instance de serveur MySQL tout en créant tous les fichiers et répertoires requis dans le dossier $datadir/mysql-cluster.

Cette commande doit être exécutée sur tous les nœuds de données.

    Configuration du nœud de gestion
Semblable au nœud de données, une nouvelle instance de serveur MySQL doit être configurée pour le nœud de gestion afin de utilisez-le comme nœud de gestion. Exécutez la commande suivante pour créer une nouvelle instance de serveur MySQL :

sudo /usr/sbin/mysqld --defaults-file=/etc/my_mgmt1.cnf --initialize-insecure --ignore-builtin- innodb# 🎜🎜#

Cette commande créera une nouvelle instance de serveur MySQL tout en créant tous les fichiers et répertoires requis dans le dossier $datadir/mysql-cluster.

Cette commande doit être exécutée sur tous les nœuds de gestion.

Exécuter le cluster MySQL
  1. Maintenant que toutes les préparations sont terminées, vous pouvez démarrer les instances du serveur MySQL une par une et vous connecter au cluster.

Démarrez d'abord le nœud de gestion, puis exécutez la commande suivante pour joindre le nœud au cluster MySQL :

sudo ndb_mgmd -f /var/lib/mysql-cluster/config .ini --initial

Cette commande démarre le processus ndb_mgmd, qui lira le fichier de configuration et se joindra en tant que nœud de gestion au cluster MySQL. Enfin, un message sera imprimé confirmant que le nœud de gestion a démarré avec succès.

Ensuite, démarrez tous les nœuds de données. Exécutez la commande suivante sur chaque nœud :

sudo ndbd

Cette commande démarre un processus ndbd, se connecte au nœud de gestion démarré, puis rejoint le cluster MySQL. Lors de l'utilisation de plusieurs nœuds de données, cette commande doit être exécutée sur chaque nœud.

Enfin, testez si le cluster MySQL fonctionne normalement en démarrant une instance de serveur MySQL en tant que nœud SQL. Dans cet exemple, vous pouvez démarrer une instance de serveur MySQL sur un nœud et vous connecter au cluster MySQL :

sudo mysqld_safe --defaults-file=/etc/my_sql1.cnf &

#🎜 🎜 #mysql -u root

Cette commande démarrera l'instance du serveur MySQL et ouvrira le client MySQL. Vous pouvez ensuite effectuer diverses opérations de requête SQL pour tester si le cluster fonctionne correctement.

3. Résumé

Ceci est un tutoriel de base sur la création d'un cluster MySQL. MySQL Cluster peut améliorer les performances et la fiabilité et est souvent utilisé dans les applications qui doivent gérer des charges élevées, telles que les applications Web et les sites Web de commerce électronique. À l'aide de l'ensemble d'outils MCM, vous pouvez facilement configurer, déployer, surveiller et gérer des clusters MySQL. Pour de nombreuses entreprises, la mise en place d’un cluster MySQL est indispensable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:méthode de connexion mysqlArticle suivant:méthode de connexion mysql