MySQL est un système de gestion de base de données relationnelle courant couramment utilisé pour le stockage de données et la gestion d'applications Web. À mesure que le volume de données et l'accès simultané continuent d'augmenter, les performances d'une seule instance MySQL peuvent ne pas répondre aux besoins de l'application. Par conséquent, MySQL Cluster est devenu une solution courante. Cet article explique comment créer un cluster MySQL.
Première étape : préparer l'environnement
Avant de commencer à construire le cluster MySQL, nous devons préparer certains environnements et outils :
1. Au moins 3 serveurs, dont l'un sert de nœud de gestion, et les serveurs restants servent de nœud de gestion. en tant que nœud MySQL (nœud MySQL).
2. Assurer la communication réseau entre les serveurs.
3. Installez le serveur MySQL et le logiciel de cluster MySQL.
Dans cet article, nous utiliserons le système d'exploitation Ubuntu 18.04 LTS et MySQL Cluster version 7.6.21 pour la démonstration.
Étape 2 : Créer un nœud de gestion
Le nœud de gestion est utilisé pour gérer l'ensemble du cluster MySQL, y compris la création et la suppression de nœuds MySQL, le routage des requêtes de requête, etc. Sur ce nœud, nous devons installer deux packages logiciels : MySQL Cluster Manager et MySQL Server.
1. Installer MySQL Cluster Manager
MySQL Cluster Manager est un outil de ligne de commande permettant de créer et de configurer automatiquement des clusters MySQL. Installez via la commande suivante :
sudo apt-get update
sudo apt-get install mysql-cluster-manager
2 Installez MySQL Server
Sur le nœud de gestion, nous devons installer MySQL Server pour que MySQL Cluster Manager puisse. gérer le cluster MySQL. Installez via la commande suivante :
sudo apt-get install mysql-server
3. Créer la configuration du cluster MySQL
Sur le nœud de gestion, créez le fichier de configuration du cluster MySQL et spécifiez l'adresse du nœud et le numéro de port. Dans cet exemple, nous supposons que l'adresse IP du nœud de gestion est 192.168.1.100 et que le numéro de port est 1186.
Créez un fichier appelé mycluster.ini et spécifiez l'adresse du nœud et le numéro de port :
[NDB_MGMD DEFAULT]
PortNumber=1186
[NDB_MGMD]
HostName=192.168.1.100
[MYSQLD DEFAULT]
[NDBD DEFAULT]
[NDBD]
HostName=192.168.1.101
[NDBD]
HostName=192.168.1.102
4. Démarrez le nœud de gestion
Démarrez le nœud de gestion via la commande suivante :
ndb_mgmd -f mycluster.ini --configdir=/var/lib/mysql-cluster
À ce stade, MySQL Cluster Manager créera et configurera automatiquement le cluster MySQL. Vous pouvez vérifier l'état de votre cluster MySQL à l'aide de la commande suivante :
ndb_mgm
show
Étape 3 : Créer un nœud MySQL
Le nœud MySQL est le serveur qui stocke et gère réellement les données. Dans cet exemple, nous allons créer deux nœuds MySQL.
1. Installez le logiciel MySQL Cluster
Avant d'installer le logiciel MySQL Cluster, assurez-vous que les dépendances et bibliothèques nécessaires sont installées sur votre serveur. Il peut être installé à l'aide des commandes suivantes :
sudo apt-get install libaio1 libmecab2
Téléchargez ensuite le package binaire MySQL Cluster :
wget https://dev.mysql.com/get/Downloads/MySQL-Cluster-7.6 /mysql-cluster_7 .6.21-1ubuntu18.04_amd64.deb-bundle.tar
Décompressez le package téléchargé :
tar -xvf mysql-cluster_7.6.21-1ubuntu18.04_amd64.deb-bundle.tar
Entrez le répertoire décompressé :
cd mysql-cluster_7.6.21-1ubuntu18.04_amd64.deb-bundle
Exécutez la commande suivante pour installer le cluster MySQL :
sudo dpkg -i mysql-common_7.6.21-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql -cluster-client _7. 6.21-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-cluster-server_7.6.21-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-cluster-client-core_7.6.21-1ubuntu18.04_amd64. deb
sudo dpkg -i mysql-cluster-server-core_7.6.21-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-cluster-community-client_7.6.21-1ubuntu18.04_amd64.deb
sudo dpkg -i mysql-cluster- community-server_7.6.21- 1ubuntu18.04_amd64.deb
2. Configurez le nœud MySQL
Sur le nœud MySQL, nous devons modifier le fichier de configuration MySQL my.cnf et spécifier le nœud de gestion et le numéro de port correspondant au nœud.
Ouvrez le fichier my.cnf :
sudo nano /etc/mysql/my.cnf
A la fin du fichier, ajoutez la configuration suivante :
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.100
3. Démarrez le nœud MySQL
Démarrez le nœud MySQL avec la commande suivante :
sudo systemctl start mysql
4 Rejoignez le cluster MySQL
Une fois le nœud MySQL démarré, MySQL Cluster Manager surveillera et gérera automatiquement le nœud MySQL. Nœud MySQL. Vous pouvez vérifier l'état de votre cluster MySQL à l'aide de la commande suivante :
ndb_mgm
show
À ce stade, vous pouvez créer et gérer des bases de données sur le nœud MySQL.
Étape 4 : Tester le cluster MySQL
Pour vous assurer que le cluster MySQL fonctionne correctement, créez une base de données sur l'un des nœuds MySQL et étendez ses tables et données aux autres nœuds. Vous pouvez créer une base de données testdb à l'aide de la commande suivante :
mysql -uroot -p
create database testdb;
Ensuite, créez une table pour la base de données :
utilisez testdb;
create table user(name VARCHAR(20), age INT);
Enfin, insérez quelques données sur un nœud :
insérez dans les valeurs utilisateur('John',18);
Ensuite, utilisez un autre nœud MySQL pour vérifier si la table existe :
use testdb;
select * from user;
Si vous pouvez récupérer et lire les données normalement, le cluster MySQL a été configuré avec succès.
Résumé
MySQL Cluster peut améliorer considérablement les performances et la fiabilité des applications. Grâce à la combinaison de nœuds de gestion et de plusieurs nœuds MySQL, la distribution et la réplication automatiques des données peuvent être obtenues, offrant ainsi une haute disponibilité et une tolérance aux pannes. Dans les étapes ci-dessus, nous avons présenté comment créer un cluster MySQL et effectué quelques tests et vérifications. En fonction du scénario d'application spécifique, davantage de configuration et d'optimisation peuvent être nécessaires. Cependant, ces étapes peuvent servir de guide de démarrage pour vous aider à commencer à apprendre et à utiliser MySQL Cluster.
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!