9Aug

Uporaba scenarija analizatorja MySQL Performance Tuning

Ko delate na povečevanju hitrosti vašega spletnega mesta, zelo pomemben del poskrbi, da boste dobili vsak zadnji pad uspešnosti iz strežnika baz podatkov. Na žalost je za večino od nas, ki običajno niso skrbniki baz podatkov, lahko to težak predlog.

Obstajajo številni skripti za nastavitev uspešnosti, ki bodo analizirali vaše nastavitve strežnika in trenutno stanje ter vam dali podatke o priporočenih spremembah, ki bi jih morali narediti. Ne bi smeli nujno upoštevati vseh predlogov, vendar je vsekakor vredno pogledati.

Skript, ki sem ga uporabljal, vam daje priporočila za naslednje:

  • Slow Log Log Query
  • Max Connections
  • Threading Workers
  • Key Buffer
  • Query Query
  • Razvrsti Buffer
  • se pridruži
  • Temp Tables
  • Tabela( Open & Definition) Predpomnilnik
  • TabelaZaklepanje
  • pregledov tabele( read_buffer)
  • Innodb Status
  • Ko prenesete skript, ga boste morali izvršiti z naslednjim ukazom:

    chmod u + x tuning-primer.sh

    Če zagnate ta skript kot navaden uporabnik, vas bo pozval, da za svoje geslo, tako da boste morali zagotoviti ustrezno nastavitev dostopa.Če ga zaženete kot root, boste z Pleska izbrali geslo mysql, če imate nameščeno.

    Izgubil sem veliko izhoda, ki je imel veliko več priporočil, vendar je bil predolg, da bi se uvrstil na stran.

    . /tuning-primer.sh

    - MYSQL PERFORMANCE TUNING PRIMER -
    - By: Matthew Montgomery -

    MySQL različica 4.1.20 i686

    Uptime = 5 dni 10 ur 46 min 5 sek
    Povpr.qps = 4
    Skupna vprašanja = 2020809
    Threads Connected = 1

    Server deluje že več kot 48 ur.
    Priporočljivo je, da upoštevate ta priporočila

    ---- snipped -----

    QUERY CACHE
    Predpomnilnik poizvedbe je omogočen
    Trenutni query_cache_size = 8 M
    Trenutni query_cache_used = 7 M
    Trenutni query_cach_limit = 1 M
    Trenutno predpomnilnikfill razmerje = 89.38%
    Vendar pa je bilo zaradi pomanjkanja pomnilnika zaradi pomanjkanja pomnilnika odstranjenih 254246 poizvedb
    morda bi morali dvigniti query_cache_size
    MySQL ne bo cache rezultate poizvedbe, ki so večji od velikosti query_cache_limit

    ---- snipped -----

    Izgleda, da moram povečati predpomnilnik poizvedbe. .. nastavil sem ga le na 8MB, vendar prepogosto čiščenje predpomnilnika.

    ---- snipped -----

    TABELE TEMP
    Trenutni max_heap_table_size = 16 M
    Trenutni tmp_table_size = 32 M
    Od 35170 temp tabel, 74% je bilo ustvarjenih na disku
    Učinkovito v pomnilniku tmp_table_size je omejeno na max_heap_table_size.
    Morda bi morali povečati vašo tmp_table_size in / ali max_heap_table_size
    , da zmanjšate število začasnih tabel na osnovi diska
    Opomba! Stolpci BLOB in TEXT v spominskih tabelah niso dovoljeni.
    Če uporabljate te stolpce, ki zvišujejo te vrednosti, morda ne bo vplivalo na razmerje
    na tablicah temp diskov.

    ---- snipped -----

    Ta vrsta informacij je neprecenljiva, ko poskušate prilagoditi uspešnost vaše spletne strani.

    Prenos MySQL Performance Tuning Primer Script