Heim  >  Artikel  >  Datenbank  >  3 einfache Möglichkeiten, MySQL zu optimieren

3 einfache Möglichkeiten, MySQL zu optimieren

小云云
小云云Original
2018-02-11 10:55:051395Durchsuche

1. Keine zwei Datenbanken oder Anwendungen sind genau gleich. Hier wird davon ausgegangen, dass die Datenbank, die wir optimieren, eine „typische“ Website bedienen soll, bei der schnelle Abfragen, ein gutes Benutzererlebnis und die Bewältigung großer Datenverkehrsmengen im Vordergrund stehen.

2. Bevor Sie den Server optimieren, erstellen Sie bitte ein Datenbank-Backup!

Dieser Artikel bringt Ihnen hauptsächlich drei einfache kleine Anpassungen zur Optimierung von MySQL. Freunde, die es brauchen, können darauf verweisen.

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 einen Vorteil hat. Wenn Sie sich Sorgen um die Leistung machen, werfen wir einen Blick darauf, wie sie den physischen Speicher nutzen:

  • MyISAM: Nur In-Memory-Speicher der Index.

  • InnoDB: Indizes und Daten im Speicher speichern.

Fazit: Auf im Speicher gespeicherte Inhalte wird schneller zugegriffen als auf Inhalte auf der Festplatte.

So konvertieren Sie die Speicher-Engine auf Ihrem Tisch:

ALTER TABLE table_name ENGINE=InnoDB;

Hinweis: Sie haben alle entsprechenden Indizes erstellt, oder? Für eine bessere Leistung hat die Erstellung von Indizes immer oberste Priorität.

2. Lassen Sie InnoDB den gesamten Speicher nutzen

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 akzeptierte „Faustregel“ hierfür (vorausgesetzt, auf Ihrem Server läuft nur MySQL) besteht darin, den Wert auf 80 % des physischen Speichers Ihres Servers festzulegen. Nachdem Sie sichergestellt haben, dass das Betriebssystem über genügend Speicher verfügt, um ohne Verwendung der Swap-Partition normal zu laufen, 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 einstellen.

innodb_buffer_pool_size = 25600M

*Hinweis: (1) Wenn Ihr Serverspeicher klein ist und weniger als 1 GB hat. Um die Methoden in diesem Artikel anwenden zu können, sollten Sie Ihren Server aktualisieren. (2) Wenn Ihr Server über einen besonders großen Speicher verfügt, beispielsweise 200 GB, dann müssen Sie nach gesundem Menschenverstand nicht bis zu 40 GB Speicher für das Betriebssystem reservieren. *

3. Lassen Sie InnoDB Multitasking laufen

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

Die Vorteile von mehr als einem Pufferpool sind:

Es können Engpässe auftreten, wenn mehrere Threads gleichzeitig auf den Pufferpool zugreifen. Sie können diesen Konflikt minimieren, indem Sie mehrere Pufferpools aktivieren:

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

Berücksichtigen Sie für optimale Ergebnisse sowohl die Einstellungen „innodb_buffer_pool_instances“ als auch „innodb_buffer_pool_size“, um sicherzustellen, dass jede Instanz über diese verfügt mindestens 1 GB Pufferpool.

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

innodb_buffer_pool_instances = 24

Achtung!

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

sudo service mysql restart

Es gibt weitere wissenschaftliche Methoden zur Optimierung dieser Parameter, aber diese Punkte können verwendet werden Im Allgemeinen führt die Anwendung dieser Richtlinien zu einer besseren Leistung Ihres MySQL-Servers.

Verwandte Empfehlungen:

Analyse und Optimierung der Effizienz gemeinsamer MySQL-Mehrtabellenabfragen

Tipps zur Optimierung von MySQL unter Linux

Detailliertes Beispiel für die Änderung der Datenseitengröße von Innodb zur Optimierung von MySQL

Das obige ist der detaillierte Inhalt von3 einfache Möglichkeiten, MySQL zu optimieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn