Maison  >  Article  >  Opération et maintenance  >  Comment configurer un cluster de bases de données hautement disponible sous Linux

Comment configurer un cluster de bases de données hautement disponible sous Linux

王林
王林original
2023-07-06 09:18:061081parcourir

Comment configurer un cluster de bases de données à haute disponibilité sous Linux

1 Introduction
Avec la croissance continue des données d'entreprise, la haute disponibilité des bases de données est devenue de plus en plus importante. Les clusters de bases de données hautement disponibles peuvent fournir un accès continu et fiable aux données pour garantir un fonctionnement continu de l'entreprise. Cet article explique comment configurer un cluster de bases de données à haute disponibilité sur le système d'exploitation Linux et fournit des exemples de code correspondants.

2. Préparation
Avant de commencer à configurer un cluster de bases de données à haute disponibilité, vous devez d'abord effectuer quelques préparatifs.

  1. Installez le système d'exploitation : Choisissez une distribution Linux stable et fiable, telle que CentOS, Ubuntu, etc., et installez-la conformément à la documentation officielle.
  2. Installer un logiciel de base de données : choisissez un logiciel de base de données mature et stable, tel que MySQL, PostgreSQL, etc., et installez-le conformément à la documentation officielle.
  3. Configurez le réseau : assurez-vous que tous les nœuds du cluster peuvent communiquer entre eux. Il est recommandé d'utiliser une adresse IP statique pour éviter les changements d'adresse IP.
  4. Créer un utilisateur de base de données : créez un utilisateur de base de données spécifiquement pour la synchronisation des données du cluster et définissez les autorisations appropriées pour celui-ci.

3. Configurer le cluster de base de données
Ce qui suit présente une architecture de cluster de base de données commune : le mode de réplication maître-veille. Un nœud est le nœud maître, responsable du traitement des demandes de lecture et d'écriture, et les autres nœuds sont des nœuds de secours pour la sauvegarde des données. et échec.

  1. Créez le nœud maître
    Tout d'abord, configurez-le sur le nœud maître.

Modifiez le fichier de configuration de la base de données my.cnf et recherchez la section suivante :

[mysqld]
server-id=1
log-bin=mysql-bin

Définissez server-id sur une valeur unique pour identifier le nœud maître.

Redémarrez le service de base de données :

service mysql restart
  1. Créez un nœud de secours
    Ensuite, configurez-le sur le nœud de secours.

Modifiez le fichier de configuration de la base de données my.cnf et recherchez la section suivante :

[mysqld]
server-id=2
log-bin=mysql-bin

Définissez l'ID du serveur sur une valeur unique pour identifier le nœud de veille.

Redémarrez le service de base de données :

service mysql restart
  1. Configurez la synchronisation maître-esclave
    Exécutez la commande suivante sur le nœud maître :
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'备节点IP' IDENTIFIED BY '密码';
FLUSH PRIVILEGES;

Remplacez replication_user par le nom d'utilisateur réel de la base de données et remplacez l'adresse IP du nœud de sauvegarde par l'adresse IP réelle du nœud de sauvegarde et définissez un mot de passe.

Exécutez la commande suivante sur le nœud de secours :

CHANGE MASTER TO MASTER_HOST='主节点IP', MASTER_USER='replication_user', MASTER_PASSWORD='密码', MASTER_LOG_FILE='主节点的binlog文件名', MASTER_LOG_POS=主节点的binlog文件位置;
START SLAVE;

Remplacez l'adresse IP du nœud principal par l'adresse IP réelle du nœud principal, remplacez replication_user et password par le nom d'utilisateur et le mot de passe réels de la base de données, et remplacez le nom du fichier binlog et l'emplacement de le nœud principal avec la valeur réelle.

  1. Failover
    Lorsque le nœud principal tombe en panne, vous devez basculer manuellement vers le nœud de sauvegarde.

Exécutez la commande suivante sur le nœud de veille :

STOP SLAVE;
RESET MASTER;

Editez le fichier de configuration de la base de données my.cnf sur le nœud de veille, commentez la ligne suivante :

# server-id=2
# log-bin=mysql-bin

Puis redémarrez le service de base de données :

service mysql restart

Maintenant le nœud de veille deviendra le nouveau Le nœud principal et les autres nœuds de secours peuvent être configurés en tant que nouveaux nœuds de secours selon les mêmes étapes.

4. Résumé
Grâce aux étapes ci-dessus, nous avons configuré avec succès un cluster de bases de données à haute disponibilité basé sur le mode de réplication actif-veille, garantissant un accès continu et fiable aux données. J'espère que cet article pourra aider les lecteurs à configurer un cluster de bases de données à haute disponibilité sous Linux. Si vous avez des questions, veuillez vous référer aux documents officiels pertinents ou consulter des professionnels.

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!

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