Mysql
 sql >> Datenbank >  >> RDS >> Mysql

15 nützliche Tipps zur Leistungsoptimierung und Optimierung von MySQL/MariaDB

MySQL ist ein leistungsstarkes Open-Source-Relational Database Management System oder kurz RDBMS . Es wurde 1995 (20 Jahre alt) veröffentlicht. Es verwendet Structured Query Language Dies ist wahrscheinlich die beliebteste Wahl für die Verwaltung von Inhalten innerhalb einer Datenbank. Die neueste MySQL-Version ist 5.6.25 und wurde am 29. Mai 2015 veröffentlicht .

Eine interessante Tatsache über MySQL ist die Tatsache, dass der Name von Michael Widenius stammt (MySQL-Schöpfer) Tochter My. Sogar Obwohl es viele interessante Fakten über MySQL gibt, soll dieser Artikel Ihnen einige nützliche Praktiken zeigen, die Ihnen bei der Verwaltung Ihres MySQL-Servers helfen.

Im April 2009 das MySQL-Projekt wurde von Oracle gekauft. Als Ergebnis entstand ein MySQL-Community-Fork namens MariaDB wurde erstellt. Der Hauptgrund für die Erstellung des Forks war, das Projekt unter der General Public License frei zu halten.

Heute MySQL und MariaDB sind eines der am häufigsten (wenn nicht das am häufigsten) verwendeten RDBMS, das für Webanwendungen wie WordPress verwendet wird , Joomla , Magento und andere.

Dieser Artikel zeigt Ihnen einige grundlegende, aber nützliche Tipps zur Optimierung der Feinabstimmung der Leistung von MySQL/MariaDB. Bitte beachten Sie, dass dieser Artikel davon ausgeht, dass Sie bereits MySQL oder MariaDB installiert haben. Wenn Sie sich immer noch fragen, wie Sie sie auf Ihrem System installieren können, können Sie unseren ausführlichen Anleitungen hier folgen:

  1. Installieren von LAMP auf RHEL/CentOS 7
  2. Installieren von LAMP auf Fedora 22
  3. LAMP unter Ubuntu 15.04 einrichten
  4. Installieren von MariaDB auf Debian 8
  5. Installieren Sie MariaDB auf Gentoo Linux
  6. MariaDB unter Arch Linux installieren

Wichtig :Bevor wir beginnen – akzeptieren Sie diese Vorschläge nicht blind. Jedes MySQL-Setup ist einzigartig und erfordert zusätzliche Überlegungen, bevor Sie Änderungen vornehmen.

Dinge, die Sie wissen müssen:

  1. Die MySQL/MariaDB-Konfigurationsdatei befindet sich in /etc/my.cnf . Jedes Mal, wenn Sie diese Datei ändern, müssen Sie den MySQL-Dienst neu starten, damit die neuen Änderungen wirksam werden.
  2. Für das Schreiben dieses Artikels MySQL-Version 5.6 wurde als Vorlage verwendet.

1. InnoDB-Datei pro Tabelle aktivieren

Zunächst ist es wichtig zu erklären, dass InnoDB ist eine Speicher-Engine. MySQL und MariaDB verwenden InnoDB als Standardspeicher-Engine. In der Vergangenheit hat MySQL Datenbanktabellen und -indizes in einem System-Tablespace gehalten. Dieser Ansatz war für Server gedacht, deren einziger Zweck die Datenbankverarbeitung ist und deren Speicherfestplatte nicht für andere Zwecke verwendet wird.

Die InnoDB bietet einen flexibleren Ansatz und jede Datenbankinformation wird in einer .ibd gespeichert Datendatei. Jede .ibd file stellt einen eigenen Tablespace dar. Dadurch werden Datenbankoperationen wie „TRUNCATE ” kann schneller abgeschlossen werden und Sie können auch ungenutzten Speicherplatz zurückgewinnen, wenn Sie eine Datenbanktabelle löschen oder kürzen.

Ein weiterer Vorteil dieser Konfiguration ist die Tatsache, dass Sie einige der Datenbanktabellen auf einem separaten Speichergerät aufbewahren können. Dies kann die E/A erheblich verbessern auf Ihre Festplatten laden.

Die innodb_file_per_table ist in MySQL 5.6 und höher standardmäßig aktiviert. Sie können das in /etc/my.cnf sehen Datei. Die Direktive sieht so aus:

innodb_file_per_table=1

2. MySQL-Datenbankdaten auf separater Partition speichern

Hinweis :Dieses Setup funktioniert nur mit MySQL, aber nicht mit MariaDB.

Manchmal können Lese-/Schreibvorgänge des Betriebssystems die Leistung Ihres MySQL-Servers verlangsamen, insbesondere wenn sie sich auf derselben Festplatte befinden. Stattdessen würde ich empfehlen, eine separate Festplatte (vorzugsweise SSD) für den MySQL-Dienst zu verwenden.

Um dies abzuschließen, müssen Sie das neue Laufwerk an Ihren Computer/Server anschließen. Für die Zwecke dieses Artikels gehe ich davon aus, dass sich das Laufwerk unter /dev/sdb befindet .

Im nächsten Schritt bereiten Sie das neue Laufwerk vor:

# fdisk /dev/sdb

Drücken Sie nun „n “, um eine neue Partition zu erstellen. Drücken Sie dann „p “, um die neue Partition primär zu machen. Stellen Sie danach die Partitionsnummer von 1-4 ein . Danach wählen Sie die Partitionsgröße aus. Drücken Sie hier die Eingabetaste. Im nächsten Schritt müssen Sie die Größe der Partition konfigurieren.

Wenn Sie die gesamte Festplatte verwenden möchten, drücken Sie erneut die Eingabetaste. Andernfalls können Sie die Größe der neuen Partition manuell festlegen. Wenn Sie fertig sind, drücken Sie „w ” um die Änderungen zu schreiben. Jetzt müssen wir ein Dateisystem für unsere neue Partition erstellen. Das geht ganz einfach mit:

# mkfs.ext4 /dev/sdb1

Jetzt werden wir unsere neue Partition in einem Ordner einhängen. Ich habe meinen Ordner „ssd“ genannt “ und im Stammverzeichnis erstellt:

# mkdir /ssd/

Wir sind bereit, die neue Partition, die wir gerade erstellt haben, in den neuen Ordner einzuhängen:

# mount /dev/sdb1  /ssd/

Sie können das Mounten beim Start durchführen, indem Sie die folgende Zeile in /etc/fstab hinzufügen Datei.

/dev/sdb1 /ssd ext3 defaults 0 0

Jetzt können Sie MySQL auf die neue Festplatte verschieben. Stoppen Sie zuerst den MySQL-Dienst mit:

# service mysqld stop

Ich würde Ihnen empfehlen, auch Apache/nginx zu stoppen, um Schreibversuche in den Datenbanken zu verhindern:

# service httpd stop
# service nginx stop

Kopieren Sie nun das gesamte MySQL-Verzeichnis in das neue Laufwerk:

# cp /var/lib/mysql /ssd/ -Rp

Dies kann je nach Standort Ihrer MySQL-Datenbanken eine Weile dauern. Sobald dieser Vorgang abgeschlossen ist, benennen Sie das MySQL-Verzeichnis um:

# mv /var/lib/mysql /var/lib/mysql-backup

Als nächstes erstellen wir einen Symlink.

# ln -s /ssd/mysql /var/lib/mysql

Jetzt können Sie Ihren MySQL- und Webdienst starten:

# service mysqld start
# service httpd start
# service nginx start

An diesem Punkt wird von dem neuen Laufwerk aus auf Ihre MySQL-Datenbanken zugegriffen.

Seiten:1 2 3 4