Maison  >  Article  >  base de données  >  Construction pratique d'un cluster MySQL (2) - réalisation de la réplication maître-esclave de la base de données MySQL

Construction pratique d'un cluster MySQL (2) - réalisation de la réplication maître-esclave de la base de données MySQL

黄舟
黄舟original
2017-02-28 13:29:411632parcourir

Suite à l'article précédent "Construction pratique d'un cluster mysql (1) --Installation binaire de mysql-5.6 sous centos7", cet article présente comment le serveur de base de données principal sauvegarde les données sur un autre serveur sous forme de fichiers journaux .Serveur, de cette manière, la réplication maître-esclave de la base de données peut être réalisée et la sauvegarde sécurisée des données peut être réalisée.

Pour les opérations principales de la bibliothèque :

1. Activez la fonction log-bin sur le maître :

 # vi /etc/my.cnf 
添加如下内容:        
 log_bin=mysql-bin        
server_id =1

2. Redémarrez mysql

# /etc/init.d/mysqld restart

3. Connectez-vous à mysql pour créer un compte sur le serveur maître et autoriser. la fonction esclave

  #mysql –uroot –p
       mysql> grant replication slave on *.* to 'mysql'@'%' identified by 'mysql';
       mysql> flush priviliges;
       mysql> flush tables with read lock;

Bien entendu, si des données existent dans les bases de données maître et esclave avant cette opération, vous pouvez revenir en arrière la base de données dans son ensemble. Le processus est le suivant :

1 Ajoutez la commande mysqldump à /usr/bin

ln -s /application/mysql/bin/mysqldump /usr/bin/

2. Utilisez la commande mysqldump pour sauvegarder. la base de données du serveur maître :

# mysqldump -uroot -p -A --master-data=1 >

3. Une fois la sauvegarde terminée, reprenez l'opération d'écriture :


# mysql> 🎜>

Opération à partir de la base de données

1. Arrêter l'opération de synchronisation esclave

mysql> arrêter l'esclave;

2. Modifier le fichier de configuration de la bibliothèque esclave


3. . Importez le fichier master_16-09-12.sql dans la bibliothèque esclave

# vi /etc/my.cnf       
log_bin=mysql-bin       
server_id = 2


4. Configurer le serveur esclave

# mysql -uroot -p < master_16-09-12.sql


5. Démarrez le serveur esclave

mysql> change master to        
master_host="主服务器IP",       
master_user="mysql",       
master_password="mysql";

6. Vérifiez l'état du serveur esclave

    mysql> start slave;
      mysql>quit;
      #/etc/init.d/mysqld restart


Si le contenu suivant apparaît, la configuration est réussie :

mysql> show slave status\G;

cloné Implémenté de cette façon, une erreur s'est produite :

le maître et l'esclave ont des UUID de serveur MySQL égaux Solution

Cela est dû au fait que l'intégralité du répertoire de données de la base de données est également copiée lors du processus de copie du serveur, de sorte qu'auto.cnf existe dans le fichier, qui stocke l'uuid de la base de données. L'uuid de chaque base de données doit être différent.

Ce qui précède est la construction réelle du cluster mysql (2) - le contenu de la réalisation de la réplication maître-esclave de la base de données mysql. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

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