Die einzige Situation, an die ich denken kann, ist das Nachladen eines großen Mysqldump. Warum ?
Schauen Sie sich diese bildliche Darstellung von InnoDB an (Percona CTO Vadim Tkachenko)
Auf dem Bild sehen Sie, dass der InnoDB-Pufferpool schmutzige Seiten in schreibt
- Protokollpuffer
- Puffer in ibdata1 einfügen
- Doppelter Schreibpuffer in ibdata1
.ibd
Datei für jede InnoDB-Tabelle
Durch das Ausschalten des Double Write Buffer kann ein mysqldump Daten und Indexseiten in die Tabellen schneller schreiben, da nicht dieselben 16K-Seiten in ibdata1 geschrieben werden müssen.
Auf Produktionsservern sollte der doppelte Schreibpuffer niemals deaktiviert sein. Wenn Sie dies tun, um Daten schneller zu laden (natürlich während der Wartung), aktivieren Sie sie sofort nach dem erneuten Laden des DB-Servers.
Mit anderen Worten,
- Hinzufügen
innodb_doublewrite = 0
zumy.cnf
- Lauf
SET GLOBAL innodb_fast_shutdown = 0;
- Starten Sie MySQL neu
- Laden Sie mysqldump
- Entfernen
innodb_doublewrite = 0
vonmy.cnf
- Lauf
SET GLOBAL innodb_fast_shutdown = 0;
- Starten Sie MySQL neu
SET GLOBAL innodb_fast_shutdown = 0;
im vorletzten Punkt sagen ? Sollte das nicht bedeuten, dass es wieder auf 1 gesetzt wird?0
zweimal sein. Wenn mysqld wieder hochfährt, wird es wieder den Standardwert 1 haben (es sei denn, esinnodb_fast_shutdown=0
ist inmy.cnf
)Dieses Problem wurde in diesem Beitrag von Yves Trudeau gut behandelt, der anscheinend darauf hinweist, dass es sicher ist - seine Schlussfolgerung lautet:
Er sagt im Grunde, wenn Sie ein geeignetes Dateisystem haben, dann kann es sicher sein.
Perconas Leute kennen sich wirklich gut aus.
quelle
Aktualisierungen im Yves Trudeau-Blog: https://www.percona.com/blog/2015/06/17/update-on-the-innodb-double-write-buffer-and-ext4-transactions/
Kurz gesagt, es ist wahrscheinlich nicht sicher.
Die Kommentare scheinen darauf hinzuweisen, dass - während es einen Pull-the-Plug-Test überlebt, wenn der FS ext4 mit Journal oder ZFS ist, es einen einfachen Kill (oder OOM, wie ich vermute) nicht überlebt, weil der FS nicht ablehnt die teilweise geschriebenen Daten aus der App-Schicht.
quelle
Meine vorläufige Liste von Situationen, in denen es in Ordnung ist, den Doppelschreibpuffer auszuschalten:
quelle