MySQL Performance Serie - Teil 8: Replikation

MySQL verfügt über einen guten Replikationsmechanismus, der bei korrekter Konfiguration sehr fehlerunanfällig und stabil seinen Dienst verrichtet.

Die Replikation einer Datenbank hat in der Regel eines der folgenden Motive:

  • Lastverteilung: Entweder über Multi-Master-Replikation oder Master-Slave durch gezielte Select-Zuweisung auf die Slave-Datenbanken
  • Ausfallsicherheit: Multi-Master-Replikation als Failover-Datenbank ohne manuellen Zugriff
  • Verwendung einer Slave-DB als Aggregations- und/oder Analysedatenbank.

Neu in der Version 5.1 ist die Mixed-Based Replikation (kurz MBR). Hier erfolgt die Replikation normalerweise Statement basierend und wird nur bei bestimmten Ausnahmen auf Row-Level Replikation umgestellt. In vielen Szenarien resultiert die Verwendung von MBR in einer erheblichen Performancesteigerung.

Ein bekanntes Problem bei der Multi-Master-Replikation ist die automatische Schlüsselvergabe. Die MySQL Parameter auto_increment_increment und auto_increment_offset vermeiden hier doppelte Schlüsselvergabe indem Sie eine Art Schlüsselband pro Replikationsknoten erzeugen.

Die Konfiguration von zwei Knoten könnte wie folgt aussehen:

# setup NETWAYS-Server A
[mysqld]
server-id = 10
auto_increment_increment = 10
auto_increment_offset = 1
master-host = nodeb.netways.de
master-user = netUser
master-password = netPass

# setup NETWAYS-Server B
[mysqld]
server-id = 20
auto_increment_increment = 10
auto_increment_offset = 2
master-host = nodea.netways.de
master-user = netUser
master-password = netPass

Indizes und deren richtiger Einsatz sind Thema des nächsten Teils.

Share/Save/Bookmark

Weiterführende Artikel

0 Responses to “MySQL Performance Serie - Teil 8: Replikation”


  1. No Comments

Leave a Reply