Configure Stream Replication on PostgreSQL Master-Slave Setup | Postgresql Replication Tutorial
Table des matières:
- Conditions préalables
- Installez MySQL
- Configurer le serveur maître
- Configurer le serveur esclave
- Testez la configuration
- Conclusion
La réplication MySQL est un processus qui permet de copier automatiquement les données d'un serveur de base de données vers un ou plusieurs serveurs.
MySQL prend en charge un certain nombre de topologies de réplication, la topologie maître / esclave étant l'une des topologies les plus connues dans lesquelles un serveur de base de données agit comme maître, tandis qu'un ou plusieurs serveurs agissent comme esclaves. Par défaut, la réplication est asynchrone où le maître envoie des événements qui décrivent les modifications de la base de données à son journal binaire et les esclaves demandent les événements lorsqu'ils sont prêts.
Ce didacticiel couvre un exemple de base de la réplication maître / esclave MySQL avec un serveur maître et un serveur esclave sur Ubuntu 18.04. Les mêmes étapes s'appliquent à MariaDB.
Ce type de topologie de réplication est mieux adapté au déploiement de réplicas en lecture pour la mise à l'échelle en lecture, la sauvegarde de bases de données en direct pour la reprise après sinistre et pour les travaux d'analyse.
Conditions préalables
Cet exemple suppose que vous disposez de deux serveurs exécutant Ubuntu 18.04, qui peuvent communiquer entre eux sur un réseau privé. Si votre hébergeur n'offre pas d'adresses IP privées, vous pouvez utiliser les adresses IP publiques et configurer votre pare-feu pour autoriser le trafic sur le port 3306 uniquement à partir de sources fiables.
Les serveurs de cet exemple ont les adresses IP suivantes:
Master IP: 192.168.121.190 Slave IP: 192.168.121.236
Installez MySQL
Par défaut Les référentiels Ubuntu 18.04 incluent MySQL version 5.7. Pour éviter tout problème, il est préférable d'installer la même version de MySQL sur les deux serveurs.
Installez MySQL sur le serveur maître:
sudo apt-get update
sudo apt-get install mysql-server
Installez MySQL sur le serveur esclave en utilisant les mêmes commandes:
sudo apt-get update
sudo apt-get install mysql-server
Configurer le serveur maître
La première étape consiste à configurer le serveur maître MySQL. Nous apporterons les modifications suivantes:
- Définissez le serveur MySQL pour écouter sur l'IP privée Définissez un ID de serveur unique… Activez la journalisation binaire
Pour ce faire, ouvrez le fichier de configuration MySQL et décommentez ou définissez ce qui suit:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
maître: /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 192.168.121.190 server-id = 1 log_bin = /var/log/mysql/mysql-bin.log
Une fois terminé, redémarrez le service MySQL pour que les modifications prennent effet:
sudo systemctl restart mysql
L'étape suivante consiste à créer un nouvel utilisateur de réplication. Connectez-vous au serveur MySQL en tant qu'utilisateur root en tapant:
sudo mysql
Depuis l'intérieur de l'invite MySQL, exécutez les requêtes SQL suivantes qui créeront l'utilisateur de
replica
et accorderont le privilège
REPLICATION SLAVE
à l'utilisateur:
CREATE USER 'replica'@'192.168.121.236' IDENTIFIED BY 'replica_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.121.236';
Assurez-vous de changer l'adresse IP avec votre adresse IP esclave. Vous pouvez nommer l'utilisateur comme vous le souhaitez.
Tout en restant dans l'invite MySQL, exécutez la commande suivante qui affichera le nom et la position du fichier binaire.
SHOW MASTER STATUS\G
*************************** 1. row *************************** File: mysql-bin.000001 Position: 629 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: 1 row in set (0.00 sec)
Prenez note du nom du fichier, 'mysql-bin.000001' et de la position '629'. Vous aurez besoin de ces valeurs lors de la configuration du serveur esclave. Ces valeurs seront probablement différentes sur votre serveur.
Configurer le serveur esclave
Comme pour le serveur maître ci-dessus, nous apporterons les modifications suivantes au serveur esclave:
- Configurer le serveur MySQL pour écouter sur l'IPSet privé un ID de serveur unique Activer la journalisation binaire
Ouvrez le fichier de configuration MySQL et modifiez les lignes suivantes:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
esclave: /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 192.168.121.236 server-id = 2 log_bin = /var/log/mysql/mysql-bin.log
Redémarrez le service MySQL:
sudo systemctl restart mysql
L'étape suivante consiste à configurer les paramètres que le serveur esclave utilisera pour se connecter au serveur maître. Connectez-vous au shell MySQL:
sudo mysql
Tout d'abord, arrêtez les threads esclaves:
STOP SLAVE;
Exécutez la requête suivante qui configurera l'esclave pour répliquer le maître:
CHANGE MASTER TO
MASTER_HOST='192.168.121.190',
MASTER_USER='replica',
MASTER_PASSWORD='replica_password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=629;
Assurez-vous que vous utilisez la bonne adresse IP, le nom d'utilisateur et le mot de passe. Le nom et la position du fichier journal doivent être identiques aux valeurs que vous avez obtenues du serveur maître.
Une fois terminé, démarrez les threads esclaves.
Testez la configuration
À ce stade, vous devez disposer d'une configuration de réplication maître / esclave fonctionnelle.
Pour vérifier que tout fonctionne comme prévu, nous allons créer une nouvelle base de données sur le serveur maître:
sudo mysql
CREATE DATABASE replicatest;
Connectez-vous au shell MySQL esclave:
sudo mysql
Exécutez la commande suivante pour répertorier toutes les bases de données:
SHOW DATABASES;
Vous remarquerez que la base de données que vous avez créée sur le serveur maître est répliquée sur l'esclave:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)
Conclusion
Dans ce didacticiel, nous vous avons montré que vous créez une réplication maître / esclave MySQL.
N'hésitez pas à laisser un commentaire si vous avez des questions.
Ubuntu mysql mariadbComment configurer, configurer, utiliser le contrôle parental dans Windows 7

Apprenez comment activer, désactiver, configurer et utiliser la fonction de contrôle parental dans Windows 7 pour surveiller et contrôler les activités Internet des enfants.
Comment configurer mysql master

La réplication MySQL est un processus qui vous permet de copier automatiquement les données d'un serveur de base de données vers un ou plusieurs serveurs. Dans ce didacticiel, nous expliquerons comment configurer une réplication MySQL maître / esclave avec un serveur maître et un serveur esclave sur CentOS 7.
Comment configurer mysql (mariadb) master

Dans ce guide, nous vous montrerons comment configurer la réplication maître / esclave MariaDB avec un serveur maître et un serveur esclave sur Debian 10. MariaDB est l'implémentation par défaut de MySQL dans Debian.