Plusieurs variables mémoires sont utilisées par MySQL, et ce ne sont pas toujours les mêmes selon que l’on travaille sur une base MyISAM ou InnoDB.
- MyISAM : le KeyCache
Cette mémoire stocke les index fréquemment utilisés. Cela permet de rendre leur utilisation fréquente, beaucoup plus rapide. Aujourd’hui, même si on désactive la gestion du keyCache, le système d’exploitation gère en grande partie cette fonctionnalité.
- InnoDB : le bufferPool
Tout comme MyISAM, on stocke ici les index, mais pas seulement. Sa différence réside dans le fait que les données sont également placées en mémoire. Il est possible de gérer la taille utilisée par ce cache via la variable innodb_buffer_pool_size
.
- InnoDB : le memoryPool
Cette mémoire gère la structure globale des tables de la base MySQL, et joue le rôle de dictionnaire. Variable associée :innodb_memory_pool_size
.