/ / Bruke et MySQL Performance Tuning Analyzer Script

Bruke et MySQL Performance Tuning Analyzer Script

Når du jobber med å øke hastigheten pånettstedet ditt, en veldig viktig brikke er å sørge for at du får hver siste dråpe ytelse ut av databaseserveren. Dessverre, for de fleste av oss som ikke er databaseadministratorer, kan dette dessverre være et vanskelig forslag.

Det er en rekke ytelsestuningskriptersom vil analysere serverinnstillingene og gjeldende status og gi deg informasjon om anbefalte endringer du bør gjøre. Du bør ikke nødvendigvis følge alle forslagene, men det er verdt å ta en titt på uansett.

Skriptet jeg har brukt gir deg anbefalinger for følgende:

  • Slow Query Log
  • Maks tilkoblinger
  • Arbeidertråder
  • Nøkkelbuffer
  • Spørringsbuffer
  • Sorter buffer
  • tiltrer
  • Temp-tabeller
  • Tabell (Open & Definition) Cache
  • Bordlåsing
  • Tabellskanninger (read_buffer)
  • Innodb-status
  • Når du har lastet ned skriptet, må du gjøre det kjørbart med følgende kommando:

    chmod u + x tuning-primer.sh

    Hvis du kjører dette skriptet som en vanlig bruker, vil detber deg om passordet ditt, så du må sørge for å angi tilgang deretter. Hvis du kjører det som root, vil det hente mysql-passordet fra Plesk hvis du har det installert.

    Jeg har kuttet ut mye av utdataene, som hadde mange flere anbefalinger, men var bare for lange til å få plass på siden.

    ./tuning-primer.sh

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

    MySQL versjon 4.1.20 i686

    Oppetid = 5 dager 10 timer 46 minutter 5 sekunder
    Nr. qps = 4
    Totalt spørsmål = 2020809
    Tilkoblede tråder = 1

    Serveren har kjørt i over 48 timer.
    Det bør være trygt å følge disse anbefalingene

    ———– snutt ————–

    SPØRSMÅL
    Spørringsbuffer er aktivert
    Gjeldende query_cache_size = 8 M
    Gjeldende query_cache_used = 7 M
    Gjeldende spørring_cach_limit = 1 M
    Gjeldende søkefyllingsforhold for buffert = 89,38%
    Imidlertid har 254246 spørsmål blitt fjernet fra spørringsbufferen på grunn av mangel på minne
    Kanskje du bør øke query_cache_size
    MySQL vil ikke cache-søkeresultatene som er større enn query_cache_limit i størrelse

    ———– snutt ————–

    Ser ut som jeg trenger å øke spørringsbufferen ... Jeg har satt den til bare 8 MB, men den renser hurtigbufferen altfor ofte.

    ———– snutt ————–

    TEMPELBORD
    Nåværende max_heap_table_size = 16 M
    Nåværende tmp_table_size = 32 M
    Av 35170 temp-tabeller ble 74% opprettet på disk
    Effektiv tmp_table_size i minnet er begrenset til max_heap_table_size.
    Kanskje du bør øke tmp_table_size og / eller max_heap_table_size
    for å redusere antall diskbaserte midlertidige tabeller
    Merk! BLOB- og TEXT-kolonner er ikke tillatt i minnetabeller.
    Hvis du bruker disse kolonnene, kan det hende at disse verdiene ikke påvirker din
    forholdet mellom på disk temp tabeller.

    ———– snutt ————–

    Denne typen informasjon er bare uvurderlig når du prøver å stille inn ytelsen til nettstedet ditt.

    Last ned MySQL Performance Tuning Primer Script