Разгледзім ўтыліты для аптымізацыі і кантролю прадукцыйнасці MySQL \ MariaDB сервера. Некаторыя з іх вядомыя шырока, іншыя, да майго здзіўлення, адміністратарамі выкарыстоўваюцца рэдка ...
1. Пры ўсталёўцы сервера БД, у дырэкторыі / usr / share / mysql / можна знайсці гатовыя канфігурацыйныя файлы для розных конфігаў сервера. Напрыклад ўладальнікі VDS з 512 Mb памяці могуць паспрабаваць выкарыстоўваць адсюль конфіг my-small.cnf, альбо, калі яго лімітаў будзе не дастаткова, конфіг my-medium.cnf.
# Ls -la / usr / share / mysql / my- * -rw-r - r-- 1 root root 4920 ліс 15 2016 /usr/share/mysql/my-huge.cnf -rw-r - r- - 1 root root 20438 ліс 15 2016 /usr/share/mysql/my-innodb-heavy-4G.cnf -rw-r - r-- 1 root root 4907 ліс 15 2016 / usr / share / mysql / my-large .cnf -rw-r - r-- 1 root root 4920 ліс 15 2016 /usr/share/mysql/my-medium.cnf -rw-r - r-- 1 root root 2846 ліс 15 2016 / usr / share /mysql/my-small.cnf
2. На сайце tools.percona.com маецца доступ да генератара конфігаў сервера БД. Калі прадусталяванага конфігу па нейкай прычыне апынулася не дастаткова, можна аўтарызавацца на сайце і паспрабаваць згенераваць канфігурацыю тут.
3. mysqladmin - кліент для працы з серверам БД. Зручны інструмент, які дазваляе без запуску кансолі сервера БД працаваць з базамі і наладамі MySQL. Вельмі зручны для выкарыстання ў скрыптах.
4. mysqltuner.pl - вядомы скрыпт для оптимиации сервера БД. Спампоўваем яго, запускаем, і атрымліваем аналіз бягучай сітуацыі і рэкамендацыі па павелічэнні канкрэтных параметраў у конфіге. Для атрымання аптымальнага выніку, мае сэнс запускаць аналіз пасля таго як сервер БД прапрацаваў без перазапуску больш 24-36 гадзін.
# Wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl # chmod u + x mysqltuner.pl # ./mysqltuner.pl
5. Вядомы ў мінулым, але на жаль, які траціць актуальнасць для апошніх версій сервера БД скрыпт tuning-primer.sh. Аднак некаторыя адміністратары ўсё яшчэ выкарыстоўваюць яго ў працы. Прынцып працы са скрыптам аналагічны - пасля запуску, скрыпт аналізуе параметры сервера БД і дае рэкамендацыі па іх змене.
# Wget https://launchpadlibrarian.net/78745738/tuning-primer.sh # wget https://launchpadlibrarian.net/251274960/5.7.patch # patch -p0 -i ./5.7.patch patching file tuning-primer.sh Hunk # 1 succeeded at 1277 with fuzz 1. # chmod u + x ./tuning-primer.sh # ./tuning-primer.sh
6. Утыліта mytop. У CentOS усталёўваецца з рэпазітара EPEL. З дапамогай гэтай утыліты мы можам падключыцца да сервера БД патрэбным карыстальнікам, пры неабходнасці можам паказаць канкрэтную базу дадзеных і паглядзець статыстыку па ёй - які запыт быў зроблены, да якой базе, колькі гэты запыт выконваўся, ад якога хаста, у якім стане запыт знаходзіцца цяпер і т. п. Нужные опцыі утыліце можна перадаць як праз параметры запуску, так і праз конфіг ~ / .mytop. Пры неабходнасці, ўтыліту можна выкарыстоўваць у іншых скрыптах, для гэтага ў яе прадугледжаны адпаведны рэжым працы.
# Yum install epel-release # yum install mytop # mytop -u sysadmin_wtuser -p superpassword -d sysadmin_wtdbase
7. Утыліта mtop. У CentOS ставіцца з репоитория rpmforge (ён усё яшчэ жывы часткова, да). Аналагічна з папярэдняй утылітай, адміністратар можа атрымаць статыстыку па працы сервера БД, інфармацыю пра запыты да яго. Маецца магчымасць прымусова завяршыць патрэбны працэс, адфільтраваць вынікі толькі для пэўнага карыстальніка або хаста.
# Wget http://repository.it4i.cz/mirrors/repoforge/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm # yum install rpmforge- release-0.5.3-1.el7.rf.x86_64.rpm # yum install mtop # yum install yum-utils # yum-config-manager --disable rpmforge # mtop --dbuser = root --password = superpassword
8. Утыліта innotop. У CentOS усталёўваецца з рэпазітара EPEL. Выдатны інструмент для аналізу і работы з базамі, якія выкарыстоўваюць InnoDB. Аналагічна папярэднім утылітам, innodb дазваляе атрымаць інфармацыю пра запыты да базы, канкрэтных табліцах, статыстыку рэплікацыі, інфармацыю аб буферах InnoDB і т. П.
# Yum install epel-release # yum install innotop # innotop -u root -p superpassword
І mtop, і mytop, і innotop маюць падтрымку ўводу каманд, якія дазваляюць адміністратару выкарыстоўваць увесь даступны функцыянал утыліт. Спіс каманд можна атрымаць увёўшы ўжо ў занядбаным дадатку сімвал знака пытання -?