Získání pozornosti vedení je dobrá věc, pokud k tomu dochází z pozitivních důvodů. Ale mnoho správců databází by ve skutečnosti raději zůstalo mimo radar. Vzhledem k tomu, že správci databází jsou odpovědní za to, aby databáze organizace fungovaly hladce, když věci jdou správně, správci databází obvykle zůstávají v klidu a dělají svou věc v klidu. Ale když se něco pokazí, najednou jste nejlepší jméno na seznamu nejžádanějších společností.
DBA mají v rámci organizace velkou odpovědnost a existuje mnoho způsobů, jak věci jít na jih, ale dodržením několika osvědčených postupů monitorování databáze MySQL si můžete být jisti, že vás vedení uznává spíše pro váš bystrý důvtip než pro databázi. výpadek, jehož vyřešení trvalo tři dny.
Provádějte pravidelné kontroly stavu vaší databáze
Pro MySQL DBA je naplánování pravidelných kontrol stavu vašich databází téměř stejně důležité jako jejich naplánování pro sebe (Poznámka:Považujte to za připomenutí, abyste si domluvili schůzku na fyzičku, kterou odkládáte!).
Stejně jako lidé nemají všechny databáze stejné potřeby údržby, takže kontroly stavu by měly být přizpůsobeny specifickým požadavkům na funkce databáze. Například kritické databáze vyžadují častější kontroly než nekritické databáze. Selhání systému protiraketové obrany má mnohem tvrdší důsledky než selhání programu odměn pro časté zákazníky v místním knihkupectví.
Při nastavování rutinních kontrol stavu je třeba se zaměřit na několik oblastí, které vám poskytnou informace, které vám pomohou určit probíhající problémy s MySQL, které je třeba řešit.
Dostupnost MySQL
Dostupnost je pravděpodobně nejdůležitější metrikou, kterou je třeba sledovat. Pokud databáze není k dispozici, nemá smysl sledovat zbytek těchto metrik, dokud nebude opravena. Spusťte -mysqladmin -h 192.168.1.95 -u root -p status pro kontrolu dostupnosti a poté spusťte diagnostiku, pokud dojde k problému.
Selhání připojení
Sledování počtu neúspěšných připojení v průběhu času může odhalit škodlivou aktivitu a také méně zlověstné chyby v aplikaci, jako jsou nesprávně použitá oprávnění a nesprávná hesla.
Spusťte příkaz SHOW GLOBAL STATUS LIKE ‘aborted_connects’; zjistit, kolik pokusů o přerušené připojení bylo v databázi za dané časové období.
Protokoly chyb
Sledování protokolů chyb je skvělý způsob, jak zjistit, k jakým chybám došlo a zda existují nějaké vzory, které mohou naznačovat větší opakující se problém, který je třeba řešit.
Zablokování v InnoDB
K uváznutí MySQL dochází, když různé transakce drží zámek na zdroji, který jiná transakce potřebuje. Zablokování má za následek pomalé zpracování a časové limity – a obtěžuje uživatele. Použijte SHOW ENGINE INNODB STATUS; najít uváznutí a vyřešit je.
Změny konfigurace
Náhlý pokles výkonu může být způsoben tuctem různých věcí. Můžete si však ušetřit čas při odstraňování problémů tím, že zkontrolujete poslední změny konfigurace a upravíte ty, které negativně ovlivňují výkon.
Protokol pomalých dotazů
Pomalé dotazy zpomalují běh databáze, protože využívají nadměrné množství CPU a paměti. Pravidelně kontrolujte protokol Slow Queries, abyste zjistili, zda některé dotazy nevykazují příliš dlouhou dobu běhu, a poté proveďte odstraňování problémů, abyste určili a napravili hlavní příčinu.
Zachovejte viditelnost, abyste pochopili hlavní příčinu problémů s výkonem MySQL
Provádění pravidelných kontrol stavu databází MySQL je zásadní pro udržení vysoké dostupnosti a minimalizaci chronických problémů s výkonem, ale existují určitá omezení, jak užitečné jsou kontroly stavu pro celkové řešení problémů se systémem.
Protože se periodické problémy s výkonem nemusí během rutinních kontrol stavu projevit, je důležité zajistit nepřetržitý přehled o vašem prostředí MySQL. Rychlá identifikace a řešení problémů s výkonem znamená méně prostojů a méně problémů s výkonem, které negativně ovlivňují uživatele.
Jedním z nejlepších způsobů, jak si udržet přehled o databázových systémech MySQL, je nastavit upozornění na kritické události, abyste mohli rychle reagovat na překročení prahové hodnoty a dostat se ke kořenové příčině problému.
Minimálně byste měli nastavit prahové hodnoty výstrahy pro následující běžné zdroje snížení výkonu:
- Významné odchylky od výchozích metrik výkonu MySql
- Vysoké využití procesoru
- Latence dotazu
- Chyby v dotazu
- Omezení připojení
- Využití fondu vyrovnávací paměti
Rychle identifikujte a vyřešte problémy s výkonem
Možná vám projde sledování výkonu pomocí interních skriptů v malém, statickém prostředí, ale tyto skripty nenahradí proaktivní monitorování potřebné k udržení kroku s velkými, dynamickými systémy, které neustále rostou.
Téměř v každé situaci bude nejlepší nástroj pro monitorování komerčních databází pro rychlou identifikaci a řešení problémů dříve, než způsobí velké problémy.
Na trhu existuje mnoho nástrojů pro sledování výkonu, které nabízejí širokou škálu funkcí v mnoha různých cenových hladinách. Výběr správného nástroje pro vaši organizaci se scvrká na to, který nejlépe vyhovuje vašim konkrétním potřebám za cenu, která odpovídá vašemu rozpočtu.
Ačkoli neexistuje žádný univerzální nástroj, který by vyhovoval všem, existují některé důležité funkce monitorování databáze, které budete chtít hledat v jakémkoli nástroji pro monitorování výkonu, o kterém uvažujete:
- Škálovatelnost
- Mobilní monitorování
- Intuitivní uživatelské rozhraní
- Rozpočtové, ale bohaté na funkce
- Žádné omezení připojení
- Vícerozměrná analýza pracovní zátěže
- Analýza hlavní příčiny alarmu
- Analýza blokování
- Inteligentní budíky
- Sledování historických dat