sql >> Database >  >> RDS >> Mysql

mysql-failover:hoe kiest u slaaf als nieuwe meester?

Uit de MySQL-documentatie , zijn er twee manieren om een ​​master-slave-architectuur op te zetten. De traditionele manier, waarbij de logbestanden worden gebruikt om transacties te repliceren en de nieuwe versie (5.6+) met GTID's (globale transactie-ID's).

Als u ervoor kiest GTID's te gebruiken om de failover-afhandeling uit te voeren, gebruikt u de mysqlfailover nutsvoorziening. Het hulpprogramma verwerkt masterfouten op een van de drie manieren die door de databasebeheerder zijn gedefinieerd:

  • auto (standaard):Er wordt gezocht in een lijst met favoriete slaves om master te worden, als er geen beschikbaar zijn, wordt een andere slave gekozen. De gekozen slaaf wordt eerst de slaaf van alle andere slaven en heeft alle wijzigingen van de andere slaven ernaar gekopieerd, op deze manier zal de nieuwe meester de meest up-to-date versie zijn die mogelijk is.
  • elect:hetzelfde als hierboven, behalve dat als er geen slaves uit de lijst beschikbaar zijn, het een fout retourneert en eindigt (geen failover)
  • mislukt:er vindt geen failover plaats mysqlfailover zal alleen de database controleren en een fout retourneren als er een storing optreedt.

De traditionele manier vereist dat u uw eigen script implementeert voor databasebeheer en wordt beter uitgelegd hier .



  1. Probleem met verbindingspool met MySQL met Hibernate en Apache DBCP

  2. GROUP BY voor continue rijen in SQL

  3. ROW_NUMBER in SQL – Selecteer Topvoorbeeld in SQL en SQL Server

  4. Hoe de CASE-verklaring in MySQL te gebruiken?