MySQL малък тунинг и препоръки за MySQL, извършване на инсталиране, конфигуриране и поддръжка

В 99% от това е вярно. Повече нужда да се използва за кеширане индекси (key_buffer). Тук е много добър избор за работа с индекси

Този тип маса е по-малко склонни да се срива (и също така има много ползи) от MyISAM и вече е тип маса подразбиране във версии 5.5 и по-високи. Ако имаме нужда от търсене на пълен текст, използвайте допълнителни sphinks.

3) Използвайте проверка настройка скриптове, бази за сравнение.

Особено внимание следва да се обърне на това, което действително е необходимо показатели или само на MySQL или цялото приложение.

Пълен стак от сравнителния анализ, инструменти:

Можете също така да се опита да прогони sqlmap база данни - tulza да намерят слаби места.

Има 2 голяма полза за тази цел и mtop mytop. С тяхна помощ ще можете да видите в реално време, която запитва натоварването на база данни.

5) Активиране влезете бавни заявки:

log_error = / Var / дневник / MySQL / error.log
log_slow_queries = / Var / дневник / MySQL / slow.log
long_query_time = 5
логаритмични запитвания-не-използване-индекси

и да гледате дневника периодично.

6) Съединение от контакта.

Използва се, когато това е възможно да се свърже по гнездо вместо IP: порт

Използва се за прескачане име-разреши rezolving изключен. По този начин можете да спечелите до 20% производителност.

Но бъдете внимателни: Ако активирате тази опция, също не е Localhost е решен, така че ако сте конфигурирали в сайта и в правата на ползване Localhost - променете го на 127.0.0.1. По-специално това се наблюдава на Debian Lenny

8) Включване кеширане.

Всъщност, това позволява на множество бази данни, за да се ускори работата. Позволява кеширане:

Какво бихте избрали правилните настройки query_cache_size, query_cache_limit. както и други параметри, използване програма теста кеш настройка на параграфи 3 и 4.

Ако изберете заявки са 90% или повече от всички искания че има смисъл да се добави опция за нисък приоритет актуализации. което поражда приоритетните изберете запитвания.

10) Изключване неизползваните видове съхранение

Ако не се използва, например, за InnoDB или DBD. След това можете да ги деактивирате. Тя също така ще спести няколко ресурси:

Ако сте събрали MySQL. например, без BDB съхранение. вие ще получите съобщение, когато използвате за пропускане-BDB възможности:

[Грешка] / ЮЕсАр / местни / libexec / Mysqld: неизвестен опция "--skip-ББР"

Затова е по-добре първо да видите списък на наличните съхранение.

PS. Вижте всички налични видове съхранение можете да:

MySQL> покажи двигатели;
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| двигател | Поддръжка | коментар | Сделки | XA | точки на запис |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB | По подразбиране | Поддържа сделки, на ниво ред заключване, както и външни ключове | YES | YES | YES |
| MRG_MYISAM | YES | Събиране на идентични MyISAM таблици | NO | NO | NO |
| Blackhole | YES | / Dev / нула двигател съхранение (всичко, което пиша, за да може да изчезне) | NO | NO | NO |
| CSV | YES | CSV съхранение на двигателя | NO | NO | NO |
| MEMORY | YES | Hash основа, съхранявани в паметта, полезен за временни таблици | NO | NO | NO |
| FEDERATED | NO | Федерални MySQL за съхранение на двигателя | NULL | NULL | NULL |
| АРХИВ | YES | Архив на двигателя съхранение | NO | NO | NO |
| MyISAM | YES | Стандартна машина като на MySQL 3.23 с голяма производителност | NO | NO | NO |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
8 реда в комплект (0.00 сек)

11) Брой на потоци

Опитайте брой * процесора 2 за thread_concurrency
thread_cache_size = 8

12) Съвети за оптимизация от Oracle

13) Включване на функцията за автоматично възстановяване на MyISAM

14) съхранява всяка маса в отделен файл (InnoDB)

Ако размерът на файла с база ibdata1 твърде голям, можете да активирате опцията

но тази промяна ще се отрази само на нови таблици.

15) Използване на тапа вместо вградения InnoDB InnoDB.

16) Използване на шаблони ми * .cnf

По подразбиране, когато инсталирате MySQL инсталиран, примерни конфигурационни файлове за различни ситуации. В FreeBSD, че те се намират тук / ЮЕсАр / акции / док / MySQL /:

  • ми-small.cnf - за системи с капацитет малко памет (<=64Mb), в которых MySQL используется редко.
  • ми-medium.cnf - ако достатъчно памет (32-64Mb) MySQL или се използва в комбинация с други приложения (например Apache) и памет за 128Mb.
  • ми-large.cnf. ми-huge.cnf - за системи с голям обем памет (512Mb, 1-2Gb), където MySQL играе основна роля.
  • ми-InnoDB-тежък 4G.cnf - 4Gb памет, InnoDB, MySQL играе основна роля.

След инсталацията (или вече тогава) изпълнява mysql_secure_installation скрипт. Истината е, че тя не съществува в FreeBSD. Но вие можете ръчно да. Ето списък от команди:

UPDATE mysql.user SET Парола = ПАРОЛА ( "NEWROOTPASSWORD"), когато ползвателят = 'корен';
Изтрий от mysql.user Когато ползвателят = '';
! Изтриете от mysql.user Когато ползвателят = 'корен "и приемните =' Localhost";
устойчивост на изпускане на база данни;
Изтрива от mysql.db КЪДЕТО Db = "тест" или Db = "тест \\ _%;
FLUSH ПРИВИЛЕГИИ;

18) за компресия маси

В InnoDB има формат за данни, наречена Baracuda. Така че, той поддържа компресия. Това намалява натоварването на IO (устройства) чрез използване на компресия. Само като препоръка да използвате размер на блока от 16K записи. Ето един пример alter'a:

Поставя глобални innodb_file_format = BARRACUDA;
ALTER ТАБЛИЦА `Т1 ДВИГАТЕЛ = InnoDB ROW_FORMAT = СГЪСТЕН KEY_BLOCK_SIZE = 16;

Този набор от инструменти от категорията трябва да има. Можете да го изтеглите от тук. Много добро описание на инструмента можете да намерите тук

20) мащаб.

Можете да използвате и обединена маса или partitsirovanie.