Nous savons que de nombreux sites Web adoptent désormais la séparation maître-esclave et la séparation lecture-écriture. Dans cet article, nous présentons principalement le paramètre de séparation maître-esclave pour la base de données MySQL. J'espère que tout le monde comprendra mieux cela.
1. Introduction
La configuration de la séparation lecture-écriture pour la base de données MySQL permet d'exécuter les opérations d'écriture et de lecture sur la base de données sur différents serveurs, améliorant ainsi la concurrence et la vitesse de réponse. Les sites Web d'aujourd'hui sont généralement plus grands et adoptent la séparation maître-esclave de la base de données et la séparation lecture-écriture, qui servent non seulement de sauvegarde mais réduisent également la pression de lecture et d'écriture de la base de données. J'en ai toujours entendu parler, mais je ne l'ai jamais pratiqué. moi-même aujourd'hui. Avoir le temps de le pratiquer et d'enregistrer le processus.
2. Préparation de l'environnement
J'ai préparé deux serveurs, l'un est un PC local et l'autre est une base de données Mysql installée sur les deux machines respectivement. installation. , ce qu'il faut noter ici est : il est préférable d'avoir la même version de MySQL installée. Si elle est incohérente, il peut y avoir des problèmes lorsque la version inférieure lit à partir de la version supérieure, il est donc préférable de la garder cohérente. .
Serveur maître de base de données principale : 172.10.10.69 système Linux centos 7, version mysql 5.6.35
Machine locale esclave : 172.10.10.240 système Win7, version mysql 5.6.35
3. Configuration de la bibliothèque principale
Créez un utilisateur root dans la bibliothèque principale pour lire le journal d'exécution de la bibliothèque principale à partir de la bibliothèque.
Doit être exécuté dans la ligne de commande mysql, vous devez d'abord vous connecter à la ligne de commande
1. GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.10.10.240' IDENTIFIÉ PAR '123456'; 2. vider les privilèges ;
Modifier le fichier my.cnf :
Ajouter
server-id=13log-bin=master-binlog-bin-index=master- bin.index sous [mysqld]
Redémarrer MySQL
Entrez la ligne de commande mysql et entrez show master status pour afficher les informations
Mémorisez le fichier et la position car ils sont utilisés lorsqu'ils sont utilisés ; configuration du service esclave.
4. Configurer le serveur esclave
Modifier my.cnf
server-id=2relay-log=slave-relay-binrelay-log-index=slave-relay- bin .index
Redémarrez la base de données.
Connectez-vous à la base de données master et entrez la commande sur la ligne de commande :
changez master en master_host='192.10.10.69', #Master server Ipmaster_port=3306,master_user='root', master_password= '123456', master_log_file='master-bin.000255', #Nom du fichier journal principal master_log_pos=1575; #Position de début de la synchronisation du journal principal
Faites attention à la réussite de l'exécution. , vérifiez attentivement le code. Regardez où je l'ai mal écrit.
Si l'exécution est normale, démarrez l'esclave esclave et vérifiez l'état de la connexion.
//Vous devez exécuter start slave sur la ligne de commande mysql ; show slave status ; //Afficher l'état de la connexion de l'esclave
Informations sur l'état :
Slave_IO_State : En attente du maître pour envoyer l'événement Master_Host : 45.78.57.4 Master_User : test Master_Port : 3306 Connect_Retry : 60 Master_Log_File : master-bin.000001 Read_Master_Log_Pos : 672913 Relay_Log_File : slave-relay-bin.000044 Relay_Log_Pos : 504 Relay_Master_Log_File : 01 Slave_IO_Running : Oui //Doit être OUI Slave_SQL_Running : Oui //Doit être OUI
Si Slave_IO_Running et Salve_SQL_Running ne sont pas OUI en même temps, la configuration est erronée, vérifiez les étapes ci-dessus.
5. Testez
Ajoutez une donnée dans la base de données maître et vérifiez s'il y a des données dans la base de données esclave.
Ce qui précède est le tutoriel de configuration de base de la séparation maître-esclave MySQL. J'espère que cela pourra aider tout le monde.
Recommandations associées :
Introduction détaillée sur la séparation maître-esclave
Explication détaillée de l'exemple de code de séparation maître-esclave de la base de données Mysql
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!