Comment configurer la réplication maître-esclave de MySQL sur RHEL 8
- 1334
- 15
- Victor Charpentier
Réplication mysql est un processus où les données d'un serveur sont automatiquement copiées ou répliquées sur un autre serveur de sauvegarde en temps réel. La réplication fournit une redondance et une tolérance aux défauts et donne à l'esprit l'utilisateur que même après une défaillance du serveur maître, les données peuvent toujours être récupérées.
Dans ce tutoriel, vous allez apprendre à configurer et configurer une réplication maître-esclave MySQL sur un Rhel 8 Linux.
Conditions préalables
Dans la configuration, nous allons avoir deux serveurs en cours d'exécution Rhel 8 avec les adresses IP suivantes.
Maître = 173.82.120.14 Esclave = 173.82.115.165Note: Les instructions fournies dans cet article ne fonctionneront que si vous avez activé l'abonnement Red Hat sur RHEL 8.
Voyons maintenant et voyons comment nous pouvons configurer la configuration de la réplication MySQL Master-Slave sur Rhel 8 Linux.
Étape 1: Installez MySQL sur le serveur maître et esclave
1. La dernière version du Mysql 8.X est déjà inclus dans le référentiel par défaut de Rhel 8 et vous pouvez l'installer en utilisant la commande yum suivante.
# yum -y install @mysqlInstallez MySQL Server dans RHEL 8
Étape 2: sécuriser MySQL sur le serveur maître et esclave
Après l'installation, vous devriez maintenant démarrer le Mysql Service que vous venez d'installer et le faire démarrer automatiquement chaque fois que vous démarrez le serveur. Par conséquent, utilisez la commande suivante.
# SystemCTL Activer MySQLD # SystemCTL Start MySQLD
Ensuite, vous devez sécuriser votre installation MySQL en exécutant le script de sécurité qui est livré avec plusieurs opérations basées sur la sécurité telles que la définition du mot de passe racine, la suppression des utilisateurs anonymes, interdire la connexion racine à distance, supprimer la base de données de test et recharger le privilège.
# mysql_secure_installationInstallation sécurisée de MySQL dans Rhel 8
Procéder au reste de l'invite et répondre Oui
à toutes les questions afin de configurer le serveur aux meilleures pratiques de sécurité.
Étape 3: Configuration du serveur maître MySQL
Pour commencer avec le Maître Configuration du serveur, procédez et ouvrez le fichier de configuration MySQL en tapant la commande suivante.
$ sudo vim / etc / mon.CNF
Dans le mysqld
Section, ajoutez les lignes comme indiqué ci-dessous.
Bind-Address = 173.82.120.14 server-id = 1 log_bin = mysql-binConfigurer le serveur maître mysql
Enfin, redémarrez le Mysql service.
$ sudo systemctl redémarrer mysqld
Maintenant, nous allons créer un utilisateur de réplication. Par conséquent, connectez-vous à votre serveur maître MySQL en tant qu'utilisateur racine et fournissez le mot de passe.
$ sudo mysql -u root -p
Maintenant, exécutez les commandes suivantes pour créer la réplique de l'utilisateur tout en accordant en même temps l'accès à l'esclave à l'utilisateur. N'oubliez pas d'utiliser l'adresse IP de votre machines.
mysql> Créer l'utilisateur 'réplique' @ '173.82.115.165 'identifié par' Strong_password '; mysql> Slave de réplication de la subvention sur *.* À 'réplique' @ '173.82.115.165 ';Créer un utilisateur de réplication MySQL
Maintenant, vous allez taper la commande suivante qui imprimera le nom de fichier et la position binaires.
mysql> Afficher le statut maître \ gVérifiez le statut de réplication du maître MySQL
N'oubliez pas de prendre note du nom de fichier résultant msql-bin.000002
et sa position 939
.
Étape 4: Configuration du serveur esclave MySQL
Tout comme le processus de configuration du maître, vous devriez apporter les modifications suivantes au fichier de configuration de l'esclave MySQL.
$ sudo vim / etc / mon.CNF
Ajoutez les lignes suivantes dans le fichier de configuration sous mysqld
section.
Bind-Address = 173.82.115.165 server-id = 2 log_bin = mysql-binConfigurer le serveur esclave MySQL
Redémarrer le serveur.
$ sudo systemctl redémarrer mysqld
Maintenant, l'étape suivante consiste à configurer le serveur d'esclaves pour reproduire à partir du serveur maître. Connectez-vous à MySQL Server.
$ sudo mysql -u root -p
Tout d'abord, arrêtez les fils de réplication.
mysql> Arrêter l'esclave;Arrêter le serveur esclave MySQL
Maintenant, exécutez la requête suivante qui configurera l'esclave pour reproduire à partir du serveur maître.
mysql> Changer de maître en -> maître_host = "173.82.120.14 ", -> Master_User =" réplique ", -> Master_PassWord = '[Email Protected]', -> Master_Log_File =" MySQL-BIN.000002 ", -> Master_log_pos = 939;Configurer l'esclave MySQL pour reproduire les données de Master
Assurez-vous que vous utilisez le nom d'utilisateur IP et le mot de passe correct. Utilisez également le nom de fichier et la position que vous avez obtenu du serveur maître.
Enfin, tapez la commande suivante pour démarrer les fils d'esclaves.
mysql> Commencer l'esclave;Démarrer le serveur esclave MySQL
Étape 5: Tester la réplication maître-esclave de MySQL
À ce stade, vous avez terminé la configuration des serveurs maître et esclave. Nous devons maintenant vérifier si la configuration fonctionne et si la réplication peut avoir lieu.
Pour ce faire, dirigez-vous vers le maître serveur et connectez-vous au serveur de base de données MySQL.
$ sudo mysql -u root -p
Créer une exemple de base de données.
mysql> Créer une base de données réplication_database;Créer une base de données de réplication MySQL
Maintenant, dirigez-vous vers le Esclave serveur et encore une fois, connectez-vous au serveur de base de données MySQL.
$ sudo mysql -u root -p
Répertorie maintenant toutes les bases de données à l'aide de la commande suivante.
mysql> Afficher des bases de données;Vérifiez la réplication maître-esclave de MySQL
Si vous voyez la base de données créée, alors le Réplication maître-esclave mysql Configuration des travaux.
Conclusion
La réplication est un processus assez simple qui peut être facilement effectué. Dans ce guide, vous avez appris comment créer une réplication d'un maître mysql à esclave dans un Rhel 8 Linux.
- « Comment installer Mosh Shell comme alternative SSH sur Linux
- Comment définir l'heure, le fuseau horaire et la synchronisation de l'horloge système à l'aide de la commande timeDatectl »