PostgreSQL prend en charge une variété de solutions de réplication maître-esclave, qui peuvent être utilisées pour la sauvegarde des données, la récupération après panne et l'équilibrage de charge. Ce qui suit est un schéma de réplication maître-esclave courant. Vous pouvez choisir la méthode appropriée en fonction de vos besoins.
Configurer la base de données principale :
Modifiez le fichier de configuration postgresql.conf de la base de données principale et activez la fonction de réplication. Définissez les paramètres suivants :
wal_level = replicamax_wal_senders = 10
Modifiez le fichier pg_hba.conf pour permettre au serveur esclave de se connecter au serveur maître. Ajoutez les lignes suivantes :
host replication <从服务器IP地址> trust
Créer à partir de la base de données :
Dans le fichier de configuration postgresql.conf de la base de données esclave, activez la fonction de réplication. Définissez les paramètres suivants :
wal_level = replica
Dans le fichier pg_hba.conf de la base de données esclave, ajoutez la ligne suivante pour autoriser les connexions d'esclave à esclave :
host replication <主服务器IP地址> trust
Configurer la réplication maître-esclave :
Sur le serveur de base de données principal, créez un rôle utilisateur pour la réplication. Exécutez la commande suivante dans le terminal psql :
CREATE ROLE replicator REPLICATION LOGIN CONNECTION LIMIT 10 ENCRYPTED PASSWORD 'password';
Remplacez « mot de passe » par votre mot de passe actuel.
Sur le serveur de base de données principal, créez un emplacement de réplication. Exécutez la commande suivante dans le terminal psql :
SELECT * FROM pg_create_physical_replication_slot('replication_slot_name');
Notez qu'il faut remplacer 'replication_slot_name' par le nom réel de l'emplacement de réplication.
Sur le serveur de base de données principal, modifiez le fichier pg_hba.conf pour autoriser les connexions pour les rôles d'utilisateur répliqués. Ajoutez les lignes suivantes :
host replication replicator <从服务器IP地址> trust
Démarrer la réplication maître-esclave :
Sur le serveur de base de données esclave, utilisez la commande suivante pour vous connecter à la base de données maître et lancer la réplication :
pg_basebackup -h <主服务器IP地址> -U replicator -p 5432 -D /path/to/data_directory -P -R -X stream -c fast
Notez qu'il faut remplacer '
Dans le fichier de configuration postgresql.conf de la base de données esclave, définissez les paramètres suivants :
primary_conninfo = 'host=<主服务器IP地址> port=5432 user=replicator password=password'primary_slot_name = 'replication_slot_name'
Remarque : remplacez «
Après avoir terminé les étapes ci-dessus, la réplication maître-esclave commencera
Courez. Les modifications de données sur la base de données maître seront automatiquement répliquées sur la base de données esclave et la base de données esclave maintiendra la cohérence avec la base de données maître. Vous pouvez utiliser des outils de surveillance pour surveiller l'état de la réplication maître-esclave afin de garantir son bon fonctionnement.
Veuillez noter que ce qui précède n'est qu'un aperçu d'une solution de réplication maître-esclave et que la mise en œuvre réelle peut devoir être ajustée en fonction des environnements et des besoins spécifiques. Il est recommandé de se référer à la documentation officielle de PostgreSQL et à d'autres ressources fiables pour des conseils et des instructions plus détaillées.
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!