MySQL-Replikation: Wichtigste Konfigurationsparameter für die Leistung auf dem Slave-Server?

7

Ich richte eine mysqlMaster-Slave-Konfiguration ein, die slavesich auf einem viel schwächeren Server befindet.

Da , wenn ich richtig verstehe, Slave funktioniert nur auf Updates / Inserts, was sind die wichtigsten Konfigurationsparameter , die ich einstellen kann in slave‚s my.cnfbeste Leistung und möglichst geringe Latenz zu gewährleisten?

  • Master: 32 GB RAM, Slave: 4 GB RAM
  • Meistens innodb Tische
  • Percona-Server 5.5 auf Master und Slave
Silbernes Licht
quelle

Antworten:

9

Wenn Sie Bedenken hinsichtlich der Leistung haben und es Ihnen egal ist, ob Sie bei einem Serverabsturz einen kleinen Datenblock (normalerweise 1 Sekunde) verlieren, würde ich die folgenden Variablen ändern:

Eine gute Option ist es, diesen Artikel zu lesen . Es gibt einen allgemeinen Überblick darüber, wie Innodb optimiert wird. Es funktioniert sowohl für Ihren Master als auch für Ihren Slave.

Wenn Sie ein Upgrade auf den Percona-Server planen, der Funktionen von MySQL 5.6 implementiert, würde ich empfehlen, die Anzahl der Slave-SQL-Threads zu erhöhen slave-parallel-workers

altmannmarcelo
quelle
2
Vielen Dank! Selbst innodb_flush_log_at_trx_commit=0allein hat sich die Latenz von 18 Stunden in nur wenigen Stunden verringert!
Silver Light
Deaktivieren innodb_doublewritebringt Ihnen auch einige Verbesserungen bei I / O
altmannmarcelo
Das Deaktivieren innodb_doublewriteist wirklich gefährlich
Deinlandel
1

Sie müssen nur für die InnoDB-Umgebung optimieren. innodb_buffer_pool_sizeist immer noch der Schlüssel zur Leistung.

Und da Ihr Slave-Server schwächer als der Master ist, müssen Sie möglicherweise mit Replikationsverzögerungen umgehen. (dh In Master schreiben, aber nicht sofort Daten vom Slave lesen können)

Gea-Suan Lin
quelle