Heim Datenbank MySQL-Tutorial Leitfaden zur MySQL-Leistungsoptimierung

Leitfaden zur MySQL-Leistungsoptimierung

Nov 24, 2016 am 10:01 AM
mysql mysql性能优化

Das Hauptziel dieses Artikels besteht darin, Ihnen vorzustellen, wie Sie die MySQL-Datenbank regelmäßig analysieren und überprüfen, Tabellen regelmäßig optimieren und einige gängige SQL-Anweisungen optimieren. Dies kann Ihnen dabei helfen, effizienteres SQL in MySQL zu schreiben Entwicklung.

1. Periodische Analysetabelle und Prüftabelle

Die Syntax der Analysetabelle lautet wie folgt:

ANALYZE [LOCAL |. NO_WRITE_TO_BINLOG] TABLE tb1_name [, tbl_name] ...

Die obigen Anweisungen werden verwendet, um die Schlüsselwortverteilung der Tabelle zu analysieren und zu speichern, damit das System sie erhalten kann Genaue statistische Informationen, die es SQL ermöglichen, einen korrekten Ausführungsplan zu generieren. Wenn der Benutzer der Meinung ist, dass der tatsächliche Ausführungsplan nicht dem erwarteten Ausführungsplan entspricht, kann das Problem möglicherweise durch Ausführen einer Analysetabelle gelöst werden. Während der Analyse wird die Tabelle mit einer Lesesperre gesperrt. Dies funktioniert für MyISAM-, DBD- und InnoDB-Tabellen.

Zum Beispiel eine Datentabelle analysieren

Tabelle Tabellenname analysieren

Die Syntax von Die Prüftabelle lautet wie folgt:

CHECK TABLE tb1_name]...[option]...option = {QUICK |. EXTENDED} >

Die Funktion der Prüftabelle besteht darin, zu überprüfen, ob eine oder mehrere Tabellen Fehler aufweisen. Bei MyISAM- und InnoDB-Tabellen werden Schlüsselwortstatistiken aktualisiert

CHECK TABLE kann die Ansicht auch auf Fehler überprüfen, z. B. auf eine Tabelle, auf die in der Ansichtsdefinition verwiesen wird und die nicht vorhanden ist.

2. Optimieren Sie die Tabelle regelmäßig

Die Syntax der optimierten Tabelle lautet wie folgt:

OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tb1_name [, tbl_name]...

Wenn ein großer Teil der Tabelle gelöscht wurde oder wenn eine Tabelle mit Zeilen variabler Länge (eine Tabelle mit VARCHAR, BLOB , oder TEXT-Spalten) wurde Für weitere Änderungen sollte der Befehl OPTIMIZE TABLE zur Tabellenoptimierung verwendet werden. Dieser Befehl kann die Speicherplatzfragmente in der Tabelle zusammenführen und die durch Löschen oder Aktualisieren verursachte Speicherplatzverschwendung beseitigen, aber der Befehl OPTIMIZE TABLE funktioniert nur bei MyISAM-, BDB- und InnoDB-Tabellen.

Zum Beispiel: Tabelle optimieren Tabellenname

Hinweis: Die Tabelle wird während der Ausführung von Analyse, Prüfung und Optimierung gesperrt. Stellen Sie daher sicher, dass Sie entsprechende Vorgänge ausführen, wenn die MySQL-Datenbank nicht ausgelastet ist .

Häufig verwendete SQL-Optimierung

Die SQL-Anweisungen, die wir während der Entwicklung häufig verwenden, sind nichts anderes als INSERT, GROUPBY usw. Wie optimieren wir diese SQL-Anweisungen?

1. Daten in großen Mengen einfügen

Bei Verwendung des Ladebefehls zum Importieren von Daten können entsprechende Einstellungen die Importgeschwindigkeit erhöhen.

Für MyISAM-Speicher-Engine-Tabellen können Sie große Datenmengen auf folgende Weise schnell importieren

Der Code lautet wie folgt:

ALTER TABLE tb1_name DISABLE KEYS;
loading the data
ALTER TABLE tb1_name ENABLE KEYS;
Nach dem Login kopieren

TASTEN DEAKTIVIEREN und ENABLE KEYS werden verwendet, um die Aktualisierung nicht eindeutiger Indizes für MyISAM-Tabellen zu aktivieren oder zu deaktivieren. Beim Importieren einer großen Datenmenge in eine nicht leere MyISAM-Tabelle kann das Festlegen dieser beiden Befehle die Effizienz des Imports verbessern.

Beim Importieren einer großen Datenmenge in eine leere MyISAM-Tabelle werden standardmäßig zuerst die Daten importiert und dann der Index erstellt. Der Index muss nicht festgelegt werden.

Daten in Datei „/home/mysql/text_txt“ in Tabellentext laden

Für Tabelle vom Typ InnoDB: This Die Methode kann die Effizienz des Datenimports nicht verbessern, es gibt jedoch mehrere Möglichkeiten, Tabellen vom Typ InnoDB zu optimieren.

1. Da Tabellen vom Typ InnoDB in der Reihenfolge der Primärschlüssel gespeichert werden, kann das Sortieren der importierten Daten in der Reihenfolge der Primärschlüssel die Effizienz der importierten Daten effektiv verbessern.

2. Führen Sie SET UNIQUE_CHECKS=0 aus, bevor Sie Daten importieren, um die Eindeutigkeitsüberprüfung zu deaktivieren. Führen Sie nach Abschluss des Imports SET UNIQUE_CHECKS=1 aus, um die Eindeutigkeitsüberprüfung wiederherzustellen, was die Effizienz des Imports verbessern kann.

3. Wenn die Anwendung die automatische Übermittlung verwendet, wird empfohlen, SET AUTOCOMMIT=0 vor dem Import auszuführen, um die automatische Übermittlung zu deaktivieren. Nachdem der Import abgeschlossen ist, führen Sie SET AUTOCOMMIT=1 aus, um die automatische Übermittlung zu aktivieren kann auch die Importeffizienz verbessern.

INSERT-Anweisungen optimieren

Beim Durchführen von Daten-INSERT können Sie die folgenden Möglichkeiten zur Optimierung in Betracht ziehen

1 Wenn viele Zeilen gleichzeitig von einem Kunden eingefügt werden, versuchen Sie es Um INSERT-Anweisungen mehrerer Wertetabellen zu verwenden, verkürzt diese Methode die Verbindung, das Herunterfahren und andere Verbrauchsvorgänge zwischen dem Client und der MySQL-Datenbank erheblich und macht die Effizienz schneller als eine einzelne INSERT-Anweisung, die separat ausgeführt wird.

Zum Beispiel:

i

nsert into test values(1,2)
insert into test values(3,4)
insert into test values(5,6)
Nach dem Login kopieren

Ändern Sie die obigen drei Sätze wie folgt: Einfügen in Testwerte(1,2),(3,4),(5 ,6)……

2. Wenn Sie viele Zeilen von verschiedenen Clients einfügen, können Sie mit der INSERT DELAYED-Anweisung eine höhere Geschwindigkeit erzielen.

DELAYED bedeutet, dass die INSERT-Anweisung tatsächlich in die Speicherwarteschlange gestellt und nicht tatsächlich auf die Festplatte geschrieben wird. Dies ist genau das Gegenteil other Der Benutzer fügt nach dem Lesen und Schreiben in die Tabelle ein.

3. Speichern Sie Indexdateien und Datendateien auf verschiedenen Datenträgern

4. Wenn Sie Stapeleinfügungen durchführen, können Sie die Geschwindigkeit erhöhen, indem Sie den Wert der Variablen „bulk_insert_buffer_size“ erhöhen Für MyISAM-Tabellen verwenden.

5. Wenn Sie eine Tabelle aus einer Textdatei laden, verwenden Sie LOAD DATA INFILE. Dies ist normalerweise etwa 20-mal schneller als die Verwendung vieler Einfügeanweisungen.

Das Obige sind einige andere Dinge, die bei der MySQL-Leistungsoptimierung beachtet werden müssen. Lassen Sie uns sie kombinieren, um die Leistung von MySQL voll auszunutzen.


Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

Mysqls Platz: Datenbanken und Programmierung Mysqls Platz: Datenbanken und Programmierung Apr 13, 2025 am 12:18 AM

Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

So stellen Sie eine Verbindung zur Datenbank von Apache her So stellen Sie eine Verbindung zur Datenbank von Apache her Apr 13, 2025 pm 01:03 PM

Apache verbindet eine Verbindung zu einer Datenbank erfordert die folgenden Schritte: Installieren Sie den Datenbanktreiber. Konfigurieren Sie die Datei web.xml, um einen Verbindungspool zu erstellen. Erstellen Sie eine JDBC -Datenquelle und geben Sie die Verbindungseinstellungen an. Verwenden Sie die JDBC -API, um über den Java -Code auf die Datenbank zuzugreifen, einschließlich Verbindungen, Erstellen von Anweisungen, Bindungsparametern, Ausführung von Abfragen oder Aktualisierungen und Verarbeitungsergebnissen.

So starten Sie MySQL von Docker So starten Sie MySQL von Docker Apr 15, 2025 pm 12:09 PM

Der Prozess des Startens von MySQL in Docker besteht aus den folgenden Schritten: Ziehen Sie das MySQL -Image zum Erstellen und Starten des Containers an, setzen

CentOS installieren MySQL CentOS installieren MySQL Apr 14, 2025 pm 08:09 PM

Die Installation von MySQL auf CentOS umfasst die folgenden Schritte: Hinzufügen der entsprechenden MySQL Yum -Quelle. Führen Sie den Befehl mySQL-server aus, um den MySQL-Server zu installieren. Verwenden Sie den Befehl mySQL_SECURE_INSTALLATION, um Sicherheitseinstellungen vorzunehmen, z. B. das Festlegen des Stammbenutzerkennworts. Passen Sie die MySQL -Konfigurationsdatei nach Bedarf an. Tune MySQL -Parameter und optimieren Sie Datenbanken für die Leistung.

MySQLs Rolle: Datenbanken in Webanwendungen MySQLs Rolle: Datenbanken in Webanwendungen Apr 17, 2025 am 12:23 AM

Die Hauptaufgabe von MySQL in Webanwendungen besteht darin, Daten zu speichern und zu verwalten. 1.Mysql verarbeitet effizient Benutzerinformationen, Produktkataloge, Transaktionsunterlagen und andere Daten. 2. Durch die SQL -Abfrage können Entwickler Informationen aus der Datenbank extrahieren, um dynamische Inhalte zu generieren. 3.Mysql arbeitet basierend auf dem Client-Server-Modell, um eine akzeptable Abfragegeschwindigkeit sicherzustellen.

See all articles