rss
twitter
  • Showcase
  • Carrières
  • Support
  • GitLab
  • Espace client
  • Contact

Augmentation drastique des performances de MySQL avec votre meilleure amie : LA RAM !

3

INDEX

Dans le my.cnf d’origine :

key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

Tout X 20 :

key_buffer = 320M
max_allowed_packet = 20M
table_cache = 1280
sort_buffer_size = 1024M
net_buffer_length = 160K
read_buffer_size = 512M
read_rnd_buffer_size = 1024M
myisam_sort_buffer_size = 160M

Et voilà les perfs :

Il s’agit de boucles sur des Select avec Insert à chaque passage et des Updates sur environ la moitié des passages, sur une base de 30 000 adhérents à un service

Requêtes dans mon bench : 29558

Durée d’exécution AVANT Durée d’exécution APRÈS
241.773 s. 36.431 s.

Presque X 7 !

Requêtes dans mon bench : 59278
Durée d’exécution AVANT Durée d’exécution APRÈS
Plantage de mysqld après 6 minutes environ 73.313 s.

Si vous affichez des données à chaque requête (genre profiler) il est probable qu’avec un tel nombre de lignes ça soit Apache qui se mette en grève. La solution est là.

DATE 24 Août 2009
by : Germain
Author / Auteur

Social Share / Partager

    3 Comments
    1. admin_i 18 décembre 2012 at 15 h 08 min Répondre

      Je précise quand même que c’est un peu bourrin sur les buffers, ne pas s’amuser à faire cela sur une machine de prod sans bien connaître son charge et surtout son nombre de connexions simultanées, parce qu’il serait facile de la mettre à genoux avec ça !!!!!!!

    2. Delage 9 février 2017 at 12 h 09 min Répondre

      Salut,
      Sur ton test tu avais quoi config ? CPU/RAM ?

      • Germain 22 mars 2017 at 21 h 02 min Répondre

        La config était : ell PowerEdge Xeon Quad Core 2.67GHz / 1 To RAID1 SATA / 16 Go / 100 Mbps

    Leave a Reply / Répondre Annuler la réponse

    *
    *

    More in Back-end : SQL, MySQL

    • Afficher les logs MySQL
    • Changer l'interclassement de plusieurs tables MySQL à la fois (ou presque
    • Connexion distante à PostgreSQL 9.3 via tunnel SSH
    • Synchroniser 2 serveurs MySQL rapidement
    • Sauvegardes MySQL et rotations avec AutoMySQLBackup

    Search the blog

    Blog categories

    • Workflow (1)
    • Front-end : HTML, CSS (13)
    • Front-end : javascript, jQuery (33)
    • Back-end : PHP, CMS (42)
    • Back-end : SQL, MySQL (20)
    • Sysadmin : Linux, Apache, GIT (75)
    • Designers : tools, advice (2)
    • Desktop : OS X (37)
    • Desktop : Microsoft (12)
    • Uncategorized (8)

    ITALIC™ Resources

    • Paramètres de connexion au serveur mail
    • Graphistes : séduire un développeur web
    • Dév front : nos bonnes pratiques
    • Mailing : nos (bonnes ?) pratiques
    • Environnement de travail Mac

    Recent posts

    • Autoriser le chargement de contenus mixtes non-https dans Chrome (Mac)
    • Afficher les logs MySQL
    • Recevoir un mail lors de la connexion root à un serveur
    • Changer l’interclassement de plusieurs tables MySQL à la fois (ou presque
    • Maildev : tester l’envoi de mails durant ses développements
    © 2008-2017 ITALIC™ • 8 bis rue Abel • 75012 PARIS • Tel +33 (0)1 48 44 46 35 • RCS PARIS 508 228 772 • Powered by WordPress & GoodLayers
    Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site web.
    Cookie settingsACCEPTER
    Manage consent

    Privacy Overview

    This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
    Necessary
    Toujours activé
    Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
    Non-necessary
    Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
    Enregistrer & appliquer