Maison > Article > base de données > MySQL - exemple de code pour mettre à niveau la réplication BinLog vers la réplication GTID en quatre étapes
1. Définissez les serveurs maître et esclave en lecture seule
mysql>SET @@global.read_only=ON;
service mysql stop
Pour activer les GTID, vous devez configurer le mode gtid, le log-bin, le log-slave-updates et appliquer la cohérence gtid sur les serveurs maître et esclave (avant MySQL 5.6.9, c'était --disable-gtid -unsafe-statement). De plus, l'esclave doit ajouter le paramètre skip-slave-start dans ce lien.
#vi /etc/my.cnf [mysqld] gtid-mode=on log-bin log-slave-updates enforce-gtid-consistency
mysql> change master to -> master_host='xxx.xxx.xxx.xxx', -> master_port=3306, -> master_user='xxx', -> master_password='xxx', -> master_auto_position=1; mysql > start slave;
À ce stade, la mise à niveau est terminée. Ci-dessous, je vais ajouter une méthode de réplication des GTID pour basculer entre le serveur relais et le serveur maître.
La réplication des GTID peut arbitrairement désigner un serveur comme serveur esclave relais ou serveur maître d'un autre serveur.
Par exemple, s'il y a trois serveurs MySQL A, B et C, A est le serveur maître de B et C. Actuellement, B doit être transformé en serveur relais pour C. La méthode d'opération spécifique est la suivante :
mysql> GRANT REPLICATION SLAVE ON *.* TO 'lyz'@'C的ip地址' IDENTIFIED BY 'lyz';
( 1) Arrêter de déposer l'esclave
mysql> stop slave;
(2) Configurer l'esclave
mysql> change master to -> master_host='B的ip地址', -> master_port=3306, -> master_user='lyz', -> master_password='lyz', -> master_auto_position=1;
(3) Démarrer l'esclave
mysql > start slave;
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!