sql >> Databáze >  >> RDS >> Mysql

15 užitečných tipů pro ladění a optimalizaci výkonu MySQL/MariaDB

MySQL je výkonný open source systém správy relačních databází nebo ve zkratce RDBMS . Vyšlo již v roce 1995 (20 let staré). Používá Structured Query Language což je pravděpodobně nejoblíbenější volba pro správu obsahu v databázi. Nejnovější verze MySQL je 5.6.25 a byl vydán 29. května 2015 .

Zajímavým faktem o MySQL je skutečnost, že název pochází od Michaela Widenius (tvůrce MySQL) dcera My. Dokonce ačkoli existuje spousta zajímavých faktů o MySQL, tento článek vám má ukázat některé užitečné postupy, které vám pomohou spravovat váš server MySQL.

V dubnu 2009 projekt MySQL koupil Oracle. Výsledkem je fork komunity MySQL s názvem MariaDB byl vytvořen. Hlavním důvodem pro vytvoření forku bylo zachování projektu zdarma pod General Public License.

Dnes MySQL a MariaDB jsou jedním z nejčastěji (ne-li nejčastěji) používaných RDBMS používaných pro webové aplikace, jako je WordPress , Joomla , Magento a další.

Tento článek vám ukáže několik základních, ale užitečných tipů, jak optimalizovat doladění výkonu MySQL/MariaDB. Mějte prosím na paměti, že tento článek předpokládá, že již máte nainstalované MySQL nebo MariaDB. Pokud stále přemýšlíte, jak je nainstalovat do vašeho systému, můžete se řídit našimi rozsáhlými průvodci zde:

  1. Instalace LAMP na RHEL/CentOS 7
  2. Instalace LAMP na Fedora 22
  3. Nastavení LAMP na Ubuntu 15.04
  4. Instalace MariaDB na Debian 8
  5. Nainstalujte MariaDB na Gentoo Linux
  6. Nainstalujte MariaDB na Arch Linux

Důležité :Než začneme – nepřijímejte tyto návrhy slepě. Každé nastavení MySQL je jedinečné a před provedením jakýchkoli změn vyžaduje další úvahu.

Věci, které potřebujete vědět:

  1. Konfigurační soubor MySQL/MariaDB se nachází v /etc/my.cnf . Pokaždé, když tento soubor upravíte, budete muset restartovat službu MySQL, aby se nové změny projevily.
  2. Za napsání tohoto článku MySQL verze 5.6 byl použit jako šablona.

1. Povolit InnoDB soubor-na-tabulku

Nejprve je důležité vysvětlit, že InnoDB je skladovací stroj. MySQL a MariaDB používají InnoDB jako výchozí úložiště. V minulosti MySQL používalo k uchovávání databázových tabulek a indexů v systémovém tabulkovém prostoru. Tento přístup byl určen pro servery, jejichž jediným účelem je zpracování databází a jejich úložný disk se nepoužívá k žádným jiným účelům.

InnoDB poskytuje flexibilnější přístup a každá databázová informace je uchovávána v .ibd datový soubor. Každý .ibd soubor představuje vlastní tabulkový prostor. Tímto způsobem databázové operace, jako je „TRUNCATE ” lze dokončit rychleji a můžete také získat zpět nevyužitý prostor při zrušení nebo zkrácení databázové tabulky.

Další výhodou této konfigurace je skutečnost, že některé databázové tabulky můžete uchovávat na samostatném úložném zařízení. To může výrazně zlepšit I/O načíst na vaše disky.

innodb_file_per_table je ve výchozím nastavení povoleno v MySQL 5.6 a vyšší. Můžete to vidět v /etc/my.cnf soubor. Direktiva vypadá takto:

innodb_file_per_table=1

2. Ukládejte data databáze MySQL na samostatném oddílu

Poznámka :Toto nastavení funguje pouze s MySQL, ale ne s MariaDB.

Někdy může čtení/zápis OS zpomalit výkon vašeho serveru MySQL, zejména pokud je umístěn na stejném pevném disku. Místo toho bych doporučil použít samostatný pevný disk (nejlépe SSD) pro službu MySQL.

K dokončení budete muset připojit nový disk k počítači/serveru. Pro účely tohoto článku budu předpokládat, že disk bude pod /dev/sdb .

Dalším krokem je příprava nového disku:

# fdisk /dev/sdb

Nyní stiskněte „n ” pro vytvoření nového oddílu. Poté stiskněte „p ”, aby byl nový oddíl primární. Poté nastavte číslo oddílu od 1-4 . Poté vyberete velikost oddílu. Zde stiskněte enter. V dalším kroku budete muset nakonfigurovat velikost oddílu.

Pokud chcete použít celý disk, stiskněte ještě jednou enter. Jinak můžete ručně nastavit velikost nového oddílu. Až budete připraveni, stiskněte „w ” zapsat změny. Nyní budeme muset vytvořit souborový systém pro náš nový oddíl. To lze snadno provést pomocí:

# mkfs.ext4 /dev/sdb1

Nyní připojíme náš nový oddíl do složky. Složku jsem pojmenoval „ssd ” a vytvořen v kořenovém adresáři:

# mkdir /ssd/

Jsme připraveni připojit nový oddíl, který jsme právě vytvořili, do nové složky:

# mount /dev/sdb1  /ssd/

Připojení můžete provést při spuštění přidáním následujícího řádku do /etc/fstab soubor.

/dev/sdb1 /ssd ext3 defaults 0 0

Nyní jste připraveni přesunout MySQL na nový disk. Nejprve zastavte službu MySQL pomocí:

# service mysqld stop

Doporučil bych vám také zastavit Apache/nginx, abyste zabránili pokusům o zápis do databází:

# service httpd stop
# service nginx stop

Nyní zkopírujte celý adresář MySQL na nový disk:

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

To může chvíli trvat v závislosti na místě vašich databází MySQL. Po dokončení tohoto procesu přejmenujte adresář MySQL:

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

Dále vytvoříme symbolický odkaz.

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

Nyní jste připraveni spustit MySQL a webovou službu:

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

V tomto okamžiku budou vaše databáze MySQL přístupné z nového disku.

Stránky:1 2 3 4
  1. Jak srovnávat výkon Moodle

  2. Jak využít WebDev.WebServer.exe (VS Web Server) v x64?

  3. Jak napsat dotaz s více způsoby chování

  4. XAMPP - Neočekávané vypnutí MySQL