15 Przydatne wskazówki dotyczące wydajności MySQL/MARIADB

15 Przydatne wskazówki dotyczące wydajności MySQL/MARIADB

Mysql to potężne open source System zarządzania relacyjną bazą danych lub w skrócie RDBMS. Został wydany w 1995 roku (20 lat). To używa Ustrukturyzowany język zapytania który jest prawdopodobnie najpopularniejszym wyborem do zarządzania treścią w bazie danych. Najnowsza wersja MySQL to 5.6.25 i został wydany 29 maja 2015 r.

Ciekawym faktem na temat MySQL jest fakt, że nazwa pochodzi Michaela Wideniusa (Stwórca Mysql) Córka Mój. Nawet Chociaż istnieje wiele interesujących faktów na temat MySQL, ten artykuł ma pokazać przydatne praktyki, które pomogą Ci zarządzać serwerem MySQL.

MySQL Performance Tuning

W kwietniu 2009 Projekt MySQL został zakupiony przez Oracle. W rezultacie Fork Community MySQL o nazwie Mariadb powstał. Głównym powodem utworzenia widelca było utrzymanie projektu wolnego od ogólnej licencji publicznej.

Dzisiaj Mysql I Mariadb są jednym z najczęściej (jeśli nie najbardziej) często używanych RDBM używanych do aplikacji internetowych, takich jak WordPress, Joomla, Magento i inni.

W tym artykule pokaże kilka podstawowych, ale przydatnych wskazówek, jak zoptymalizować dopasowanie wydajności MySQL/Mariadb. Należy pamiętać, że ten artykuł zakłada, że ​​masz już zainstalowany MySQL lub Mariadb. Jeśli nadal zastanawiasz się, jak je zainstalować w swoim systemie, możesz śledzić nasze obszerne przewodniki tutaj:

  1. Instalowanie lampy na RHEL/CENTOS 7
  2. Instalowanie lampy na Fedora 22
  3. Konfigurowanie lampy na Ubuntu 15.04
  4. Instalowanie MariaDB na Debian 8
  5. Zainstaluj Mariadb na Gentoo Linux
  6. Zainstaluj Mariadb na Arch Linux

Ważny: Zanim zaczniemy - nie akceptuj tych sugestii ślepo. Każda konfiguracja MySQL jest wyjątkowa i wymaga dodatkowej przemyślenia, zanim dokonuje jakichkolwiek zmian.

Rzeczy, które musisz wiedzieć:

  1. Plik konfiguracyjny MySQL/Mariadb znajduje się w /itp./mój.CNF. Za każdym razem, gdy modyfikujesz ten plik, musisz ponownie uruchomić usługę MySQL, aby nowe zmiany mogły się pojawić.
  2. Do napisania tego artykułu wersja mysql 5.6 został użyty jako szablon.

1. Włącz plik Innodb-Per-Per-Table

Po pierwsze, ważne jest, aby to wyjaśnić Innodb to silnik magazynowy. MySQL i Mariadb używają innodb jako domyślnego silnika pamięci. W przeszłości MySQL używane do przechowywania tabel i indeksów bazy danych w przestrzeni tabel systemowych. Takie podejście było przeznaczone dla serwerów, które jedynym celem jest przetwarzanie bazy danych, a ich dysk pamięci nie jest używany do żadnych innych celów.

InnOnDB zapewnia bardziej elastyczne podejście, a każda informacja bazy danych jest przechowywana w .ibd plik danych. Każdy .ibd Plik reprezentuje własny obszar tabelowy. W ten sposób operacje bazy danych, takie jak „ŚCIĘTY”Można ukończyć szybciej, a także możesz odzyskać nieużywaną przestrzeń podczas zrzucania lub obcięcia tabeli bazy danych.

Kolejną zaletą tej konfiguracji jest fakt, że możesz zachować niektóre tabele bazy danych w osobnym urządzeniu pamięci masowej. To może znacznie poprawić I/O Załaduj swoje dyski.

innodb_file_per_table jest domyślnie włączony w MySQL 5.6 i powyżej. Możesz to zobaczyć w /itp./mój.CNF plik. Dyrektywa wygląda tak:

innodb_file_per_table = 1 

2. Przechowuj dane bazy danych mysql na osobnej partycji

Notatka: Ta konfiguracja działa tylko z MySQL, ale nie z mariadb.

Czasami odczyt/zapisy systemu operacyjnego może spowolnić wydajność twojego serwera MySQL, zwłaszcza jeśli znajduje się na tym samym dysku twardym. Zamiast tego zalecam użycie osobnego dysku twardego (najlepiej SSD) dla usługi MySQL.

Aby zakończyć, musisz dołączyć nowy dysk do komputera/serwera. Do celów tego artykułu założę, że dysk będzie pod /dev/sdb.

Następnym krokiem jest przygotowanie nowego dysku:

# fdisk /dev /sdb 

Teraz naciśnij „N„Aby stworzyć nową partycję. Następna prasa „P„Aby nowa partycja była podstawowa. Następnie ustaw numer partycji z 1-4. Następnie wybierzesz rozmiar partycji. Naciśnij Enter tutaj. W następnym kroku musisz skonfigurować rozmiar partycji.

Jeśli chcesz ponownie użyć całego dysku naciśnij ponownie Enter. W przeciwnym razie możesz ręcznie ustawić rozmiar nowej partycji. Kiedy gotowy naciśnij „w„Aby napisać zmiany. Teraz będziemy musieli utworzyć system plików do naszej nowej partycji. Można to łatwo zrobić z:

# mkfs.ext4 /dev /sdb1 

Teraz zamontujemy naszą nową partycję w folderze. Nazwałem mój folder „SSD”I stworzony w katalogu głównym:

# mkdir /ssd / 

Jesteśmy gotowi zamontować nową partycję, którą właśnie stworzyliśmy w nowym folderze:

# Mount /dev /sdb1 /ssd / 

Możesz wykonać mocowanie przy uruchomieniu, dodając następujący wiersz /etc/fstab plik.

/dev /sdb1 /ssd ext3 domyślnie 0 0 

Teraz jesteś gotowy, aby przenieść MySQL na nowy dysk. Najpierw zatrzymaj usługę MySQL z:

# Service Mysqld Stop 

Polecam również zatrzymanie Apache/Nginx, aby zapobiec próbom pisania w bazach danych:

# serwis httpd stop # serwis nginx stop 

Teraz skopiuj cały katalog MySQL na nowym dysku:

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

Może to potrwać trochę czasu w zależności od strony twoich baz danych MySQL. Po zakończeniu tego procesu zmień nazwę katalogu MySQL:

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

Następnie utworzymy symbol.

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

Teraz jesteś gotowy, aby rozpocząć swoją usługę MySQL i internet:

# usługa mysqld start # usługa httpd start # serwis nginx start 

W tym momencie do nowego napędu będą dostępne twoje bazy danych MySQL.

Strony: 1 2 3 4