Il existe quatre stratégies pour distribuer les requêtes sur les esclaves configurés :
Choix effectué au hasard, à chaque requête.
Choix effectué au hasard à la première requête, puis garde ce serveur pour les requêtes suivantes.
C'est le choix par défaut et le moins impactant concernant l'état des connexions.
Itère sur la liste des serveurs déclarés.
Utilisé pour implémenté une stratégie personnalisée.
L'équilibrage de charge est configuré via les fichiers de configuration au moyen des valeurs random, roundrobin, and user filters.
Les serveurs peuvent être priorisés en leur assignant un poids. Un serveur dont le poids est de 2 recevra deux fois plus de requêtes qu'un serveur dont le poids est de 1 (poids par défaut). La priorisation peut être utile en environnement hétérogène. Par exemple, vous pouvez vouloir assigner plus de requêtes à une machine puissante plutôt qu'à une autre qui l'est moins. Ou bien, vous pouvez configurer différemment des serveurs qui sont plus ou moins éloignés du client, réduisant ainsi les latences.