Likes Likes:  0
Resultaten 1 tot 10 van de 10

Onderwerp: MySQL tuning

  1. #1
    MySQL tuning
    moderator
    8.233 Berichten
    Ingeschreven
    29/03/03

    Post Thanks / Like
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    266 Berichten zijn liked


    Naam: Ron
    Ondernemingsnummer: nvt

    Thread Starter

    MySQL tuning

    Op een database server (FreeBSD 5.5 stable; Dual Xeon @ 2.00GHz; 2 GB ram; MySQL 4.1.22) lijkt MySQL niet geheel gebruik te maken van het beschikbare geheugen.
    Code:
    SYSTEM MEMORY INFORMATION:
    mem_wire:         224808960 (    214MB) [ 10%] Wired: disabled for paging out
    mem_active:  +    233709568 (    222MB) [ 11%] Active: recently referenced
    mem_inactive:+   1520402432 (   1449MB) [ 72%] Inactive: recently not referenced
    mem_cache:   +     78995456 (     75MB) [  3%] Cached: almost avail. for allocation
    mem_free:    +     41496576 (     39MB) [  1%] Free: fully available for allocation
    mem_gap_vm:  +       516096 (      0MB) [  0%] Memory gap: UNKNOWN
    -------------- ------------ ----------- ------
    mem_all:     =   2099929088 (   2002MB) [100%] Total real memory managed
    mem_gap_sys: +     37937152 (     36MB)        Memory gap: Kernel?!
    -------------- ------------ -----------
    mem_phys:    =   2137866240 (   2038MB)        Total real memory available
    mem_gap_hw:  +      9617408 (      9MB)        Memory gap: Segment Mappings?!
    -------------- ------------ -----------
    mem_hw:      =   2147483648 (   2048MB)        Total real memory installed
    
    SYSTEM MEMORY SUMMARY:
    mem_used:         506589184 (    483MB) [ 23%] Logically used memory
    mem_avail:   +   1640894464 (   1564MB) [ 76%] Logically available memory
    -------------- ------------ ----------- ------
    mem_total:   =   2147483648 (   2048MB) [100%] Logically total memory
    MySQL geeft echter maar 1 GB aan beschikbaar geheugen terug:
    Code:
    MEMORY USAGE
    Max Memory Ever Allocated : 433 M
    Configured Max Per-thread Buffers : 630 M
    Configured Max Global Buffers : 282 M
    Configured Max Memory Limit : 912 M
    Total System Memory : 1 G
    Total systeem memory zou bij mijn weten 2 GB moeten zijn; op andere servers waar ook wat tweaking van MySQL heeft plaats gevonden wordt namelijk wel 2 GB total system memory weergegeven.

    Zie ik iets over het hoofd binnen MySQL, of is het OS waar ik moet kijken? Googlen leverde me tot op heden weinig op, maar misschien dat iemand mij even een duw in de juiste richting kan geven.

    Voor het tweaking gebruik ik overigens "MySQL Performance Tuning Primer Script". Tipje voor diegenen die dit handige tooltje nog niet kenden

  2. #2
    MySQL tuning
    geregistreerd gebruiker
    3.709 Berichten
    Ingeschreven
    22/05/05

    Post Thanks / Like
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)
    24 Berichten zijn liked


    Naam: Jeroen

    Niet heel toevallig de kernel zo ingesteld dat hij 1 GB voor het systeem zelf gebruikt, en 1 GB voor de users?

  3. #3
    MySQL tuning
    moderator
    8.233 Berichten
    Ingeschreven
    29/03/03

    Post Thanks / Like
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    266 Berichten zijn liked


    Naam: Ron
    Ondernemingsnummer: nvt

    Thread Starter
    Citaat Oorspronkelijk geplaatst door DutchTSE Bekijk Berichten
    Niet heel toevallig de kernel zo ingesteld dat hij 1 GB voor het systeem zelf gebruikt, en 1 GB voor de users?
    Daar dacht ik ook al aan, maar op vergelijkbare FreeBSD installs is daar niets van terug te vinden. Op andere systemen wordt duidelijk 2 GB ram weergegeven door MySQL:
    Code:
    MEMORY USAGE
    Max Memory Ever Allocated : 321 M
    Configured Max Per-thread Buffers : 208 M
    Configured Max Global Buffers : 263 M
    Configured Max Memory Limit : 471 M
    Total System Memory : 1.99 G

  4. #4
    MySQL tuning
    makes the world go around
    1.410 Berichten
    Ingeschreven
    21/07/02

    Locatie
    Almere

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: ja
    KvK nummer: 39077039
    Ondernemingsnummer: nvt

    Ron,

    Ik heb deze tool op een testsysteem gezet met 4 Gb geheugen. Ik krijg Total System Memory : 6.27 G
    terug, dus ik vermoed een bug in de tool.

  5. #5
    MySQL tuning
    moderator
    8.233 Berichten
    Ingeschreven
    29/03/03

    Post Thanks / Like
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    266 Berichten zijn liked


    Naam: Ron
    Ondernemingsnummer: nvt

    Thread Starter
    Okee, zou kunnen. Echter is de tool niet het probleem, MySQL hapert als gevolg van een probleem met "out of memory". Het tooltje gebruik ik met name om wat zaken bij te schaven.

    Met name de table_cache lijkt me het bijschaven waard:
    Code:
    mysql> show variables like 'table_cache';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | table_cache   | 2048  |
    +---------------+-------+
    1 row in set (0.00 sec)
    
    mysql> show status like 'open%tab%';
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | Open_tables   | 2048  |
    | Opened_tables | 56276 |
    +---------------+-------+
    2 rows in set (0.00 sec)
    Schroef ik de table_cache waarde verder op, dan loopt MySQL tegen de limiet van het geheugen aan. Meer geheugen bijprikken?

  6. #6
    MySQL tuning
    makes the world go around
    1.410 Berichten
    Ingeschreven
    21/07/02

    Locatie
    Almere

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: ja
    KvK nummer: 39077039
    Ondernemingsnummer: nvt

    Je zal denk ik wel moeten. Je zit echt aan de top. Elke tabel in de cache neemt geheugenruimte in beslag.


    Wat is de uptime van mysql in dit voorbeeld?

  7. #7
    MySQL tuning
    moderator
    8.233 Berichten
    Ingeschreven
    29/03/03

    Post Thanks / Like
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    266 Berichten zijn liked


    Naam: Ron
    Ondernemingsnummer: nvt

    Thread Starter
    Enkele uren, aangezien ik wat aan het schaven ben, met name op dat table_cache niveau.

    Ik laat MySQl nu even rusten, en mits geen spontane herstarts, zal ik morgen even nieuwe resultaten posten.
    /etc/my.cnf:
    Code:
    mysql# cat /etc/my.cnf
    [mysqld]
    port            = 3306
    socket          = /tmp/mysql.sock
    skip-locking
    key_buffer = 256M
    max_allowed_packet = 1M
    table_cache = 8192
    sort_buffer_size = 1M
    read_buffer_size = 1M
    read_rnd_buffer_size = 4M
    myisam_sort_buffer_size = 64M
    thread_cache_size = 8
    query_cache_size= 16M
    # Try number of CPU's*2 for thread_concurrency
    thread_concurrency = 8
    
    #skip-networking
    
    server-id       = 1
    
    [mysqldump]
    quick
    max_allowed_packet = 16M
    
    [mysql]
    no-auto-rehash
    
    [isamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M
    
    [myisamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M
    
    [mysqlhotcopy]
    interactive-timeout

  8. #8
    MySQL tuning
    geregistreerd gebruiker
    112 Berichten
    Ingeschreven
    23/12/05

    Locatie
    Leidschendam

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: ja
    KvK nummer: 27195798
    Ondernemingsnummer: nvt

    het crashen van mysql zou eventueel ook kunnen komen doordat er die aan z'n max open files zit.
    de table_cache mag nooit meer zijn dan de helft van de variable open_files_limit. welke uiteraard weer overeenkomt met de waarde van "descriptors" als je kijkt met limit of ulimit -n

    dat het script een foute waarde geeft voor het totale geheugen heeft niets met mysql te maken. dit wordt namelijk uit de sysctl hw.realmem gehaald.

    voor de foute waarde van hw.realmem, ik vermoed dat je een PAE kernel draait.
    Laatst gewijzigd door az-nzl; 08/10/07 om 22:42. Reden: Automerged Dubbelpost

  9. #9
    MySQL tuning
    moderator
    8.233 Berichten
    Ingeschreven
    29/03/03

    Post Thanks / Like
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    266 Berichten zijn liked


    Naam: Ron
    Ondernemingsnummer: nvt

    Thread Starter
    Citaat Oorspronkelijk geplaatst door az-nzl Bekijk Berichten
    het crashen van mysql zou eventueel ook kunnen komen doordat er die aan z'n max open files zit.
    Correct, dat gebeurde zondag meerdere malen. Daarop heb ik me verder ingelezen, en kwam ook tot deze conclusie, nadat ik de mysql err file had bekeken.
    Citaat Oorspronkelijk geplaatst door az-nzl Bekijk Berichten
    dat het script een foute waarde geeft voor het totale geheugen heeft niets met mysql te maken. dit wordt namelijk uit de sysctl hw.realmem gehaald.
    En die waarde moet weer terug te vinden zijn in /boot/loader.conf, right?

  10. #10
    MySQL tuning
    geregistreerd gebruiker
    112 Berichten
    Ingeschreven
    23/12/05

    Locatie
    Leidschendam

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: ja
    KvK nummer: 27195798
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door headout Bekijk Berichten
    En die waarde moet weer terug te vinden zijn in /boot/loader.conf, right?
    nee, niet elke waarde binnen sysctl is settable. hw.realmem wordt door de kernel bepaald.

    voor het ophogen van je file descriptors kan je trouwens de volgende twee regels opnemen in je sysctl.conf

    kern.maxfiles=655360
    kern.maxfilesperproc=32768

Labels voor dit Bericht

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics