Optimieren Sie MySQL mit 3 einfachen Tricks

Optimieren Sie MySQL mit 3 einfachen Tricks

Ich erwarte nicht, ein erfahrener Datenbankadministrator zu sein, aber wenn ich MySQL optimiere, glaube ich an die 80/20-Regel, die konkret besagt, dass man durch einfaches Anpassen einiger Konfigurationen eine Leistungssteigerung von bis zu 80 % erzielen kann. Insbesondere jetzt, wo Serverressourcen immer günstiger werden.

warnen

1. Keine zwei Datenbanken oder Anwendungen sind genau gleich. Hier gehen wir davon aus, dass die Datenbank, die wir optimieren, eine „typische“ Website bedient, bei der schnelle Abfragen, eine gute Benutzererfahrung und die Bewältigung großer Datenmengen im Vordergrund stehen.

2. Bevor Sie den Server optimieren, sichern Sie bitte die Datenbank!

1. Verwenden Sie die InnoDB-Speicher-Engine

Wenn Sie immer noch die MyISAM-Speicher-Engine verwenden, ist es Zeit, zu InnoDB zu wechseln. Es gibt viele Gründe, warum InnoDB gegenüber MyISAM vorteilhafter ist. Wenn Sie sich über die Leistung Gedanken machen, werfen wir einen Blick darauf, wie InnoDB den physischen Speicher nutzt:

  • MyISAM: Speichert Indizes nur im Speicher.
  • InnoDB: Speichert Indizes und Daten im Speicher.

Fazit: Auf im Arbeitsspeicher abgelegte Inhalte kann schneller zugegriffen werden als auf der Festplatte.

So wechseln Sie die Speicher-Engine auf Ihrer Tabelle:

ALTER TABLE Tabellenname ENGINE=InnoDB;

HINWEIS: Sie haben alle entsprechenden Indizes erstellt, richtig? Um die Leistung zu verbessern, sollte das Erstellen von Indizes immer oberste Priorität haben.

2. Lassen Sie InnoDB den gesamten Speicher verwenden

Sie können Ihre MySQL-Konfiguration in der Datei my.cnf bearbeiten. Verwenden Sie den Parameter innodb_buffer_pool_size, um die Menge an physischem Speicher zu konfigurieren, die InnoDB auf Ihrem Server verwenden darf.

Die allgemein akzeptierte Faustregel hierfür (vorausgesetzt, auf Ihrem Server läuft nur MySQL) besteht darin, den Wert auf 80 % des physischen Speichers Ihres Servers einzustellen. Nachdem Sie sichergestellt haben, dass das Betriebssystem über genügend Arbeitsspeicher verfügt, um ohne Verwendung von Swap-Partitionen ordnungsgemäß ausgeführt zu werden, weisen Sie MySQL so viel physischen Speicher wie möglich zu.

Wenn Ihr Server also über 32 GB physischen Speicher verfügt, können Sie diesen Parameter auf bis zu 25 GB festlegen.

innodb_buffer_pool_size = 25600M

*Hinweis: (1) Wenn Ihr Serverspeicher klein und weniger als 1 GB groß ist. Um die Methoden in diesem Artikel zu verwenden, sollten Sie Ihren Server aktualisieren. (2) Wenn Ihr Server über einen großen Arbeitsspeicher verfügt, beispielsweise 200 GB, dann müssen Sie grundsätzlich nicht bis zu 40 GB Arbeitsspeicher für das Betriebssystem reservieren. *

3. Lassen Sie InnoDB in mehreren Tasks laufen

Wenn der Parameter innodb_buffer_pool_size auf dem Server größer als 1 GB konfiguriert ist, wird der InnoDB-Pufferpool entsprechend der Einstellung des Parameters innodb_buffer_pool_instances in mehrere Instanzen aufgeteilt.

Die Verwendung von mehr als einem Pufferpool bietet folgende Vorteile:

Wenn mehrere Threads gleichzeitig auf den Pufferpool zugreifen, können Engpässe auftreten. Sie können diese Konflikte minimieren, indem Sie mehrere Pufferpools aktivieren:

Die offizielle Empfehlung für die Anzahl der Pufferpools lautet:

Um optimale Ergebnisse zu erzielen, berücksichtigen Sie die Einstellungen von innodb_buffer_pool_instances und innodb_buffer_pool_size, um sicherzustellen, dass jede Instanz über mindestens 1 GB Pufferpool verfügt.

In unserem Beispiel ist der Parameter innodb_buffer_pool_size auf einem Server mit 32 GB physischem Speicher auf 25 GB eingestellt. Eine geeignete Einstellung ist 25600M / 24 = 1,06 GB

innodb_buffer_pool_instances = 24

Beachten!

Nachdem Sie die Datei my.cnf geändert haben, müssen Sie MySQL neu starten, damit die Änderungen wirksam werden:

sudo service mysql neu starten

Es gibt wissenschaftlichere Möglichkeiten, diese Parameter zu optimieren, aber diese Punkte können als allgemeine Richtlinie angewendet werden, um die Leistung Ihres MySQL-Servers zu verbessern.

Zusammenfassen

Oben habe ich Ihnen drei einfache Anpassungen zur Optimierung von MySQL vorgestellt. Ich hoffe, sie sind hilfreich für Sie. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Optimierung der MySQL 4G-Speicherserverkonfiguration
  • MySQL-Entwicklungsleistungsforschung: Optimierungsmethode zum Batch-Einfügen von Daten
  • Zusammenfassung der zehn Prinzipien zur Optimierung grundlegender Anweisungen in MySQL
  • Einige Methoden zur Optimierung der Abfragegeschwindigkeit bei der Verarbeitung großer Datenmengen durch MySQL
  • Optimierungsmethoden, wenn MySQL zu viel CPU beansprucht (unbedingt lesen)
  • MySQL-Optimierung: Cache-Optimierung
  • MySQL-Optimierung: InnoDB-Optimierung
  • So optimieren Sie die Geschwindigkeit beim Einfügen von Datensätzen in MySQL
  • Ein kurzer Vortrag über das MySQL-Optimierungstool - langsame Abfrage

<<:  Teilen des JS-nativen Quellcodes des Spiels 2048 (das Neueste im Internet)

>>:  Von VirtualBox erstellte virtuelle Debian-Maschine teilt Dateien mit dem Windows-Host

Artikel empfehlen

Das WeChat-Applet implementiert das Scrollen von Text

In diesem Artikelbeispiel wird der spezifische Co...

Zwei Möglichkeiten, den 30-Sekunden-Werbecode aus dem Youku-Video zu entfernen

Ich glaube, jeder kennt dieses Gefühl: Ein Video m...

Mysql-Datenbankdesign - Analyse von drei Paradigmenbeispielen

Drei Paradigmen 1NF: Felder sind untrennbar; 2NF:...

Installation und Verwendung der Ubuntu 18.04 Serverversion (Bild und Text)

1 Schritte zur Systeminstallation Betriebssystemv...

Detaillierte Erklärung der JQuery-Datagrid-Abfrage

Inhaltsverzeichnis Fügen Sie dem Tree-Element Cod...

Mehrere Gründe, HTML nicht zu komprimieren

Der Grund ist einfach: In HTML-Dokumenten entsprec...

Tutorial zur Installation und Konfiguration von MySQL 5.7.16 ZIP-Paketen

In diesem Artikel finden Sie das Installations- u...

Vue implementiert Buchverwaltungsfall

In diesem Artikelbeispiel wird der spezifische Co...

Tutorial zur Verwendung des Frameset-Tags in HTML

Frameset-Seiten unterscheiden sich etwas von norm...