Maison >base de données >tutoriel mysql >Méthodes d'optimisation des requêtes de base de données
doit essayer d'éviter les analyses de table complètes, commencez par déterminer où et trier par, créer un index sur les colonnes impliquées dans group
by.
3. Optimiser les objets de la base de données
Utiliser expliquer (artefact d'optimisation des requêtes) pour vérifier l'effet d'exécution des instructions SQL
peut aider. Choisissez de meilleurs index et des instructions de requête optimisées, et rédigez des instructions mieux optimisées.N'utilisez nulle part select * from table, remplacez "*" par une liste de champs spécifique et ne renvoyez aucun champ inutilisé.
- N'effectuez pas d'opérations ni n'utilisez de fonctions sur les colonnes d'index.
- Les utilisations des requêtes limitent autant que possible pour réduire le nombre de lignes renvoyées, réduisant ainsi le temps de transmission des données et
le gaspillage de bande passante.
4. Optimisation matérielle
- Optimiser le type de données de la table
Procédure d'utilisation La fonction analyse() analyse le tableau et cette fonction peut faire des suggestions d'optimisation pour les types de données des colonnes du tableau. Utilisez-en petit si vous le pouvez. Le premier principe des types de données de table est le suivant : utilisez le type le plus court capable de représenter et de stocker correctement les données. Cela réduit l'utilisation de l'espace disque, de la mémoire et du cache du processeur.- Diviser la table
* Division verticale
Mettez la clé primaire et quelques colonnes dans une table, puis placez la clé primaire et les autres colonnes dans un autre milieu de table. Si certaines colonnes d'un tableau sont couramment utilisées et d'autres non, vous pouvez utiliser la division verticale.
* Division horizontale
Place les lignes de données dans deux tableaux indépendants en fonction des valeurs d'une ou plusieurs colonnes de données.- Utilisez une table intermédiaire pour améliorer la vitesse des requêtes
Créez une table intermédiaire, la structure de la table est exactement la même que la structure de la table source, transférez les données à compter vers l'intermédiaire table, puis effectuez des opérations sur la table intermédiaire Statistiques, obtenez les résultats souhaités
5. Optimisation de MySQL lui-même
- Optimisation du processeur
Choisissez le multicœur et un processeur avec une vitesse d'horloge élevée.
- Optimisation de la mémoire
Utilisez une mémoire plus grande. Allouez autant de mémoire que possible à MYSQL pour la mise en cache.
- Optimisation des E/S disque
* Utiliser une baie de disques
* Ajuster l'algorithme de planification de disque
Choisir l'algorithme de planification de disque approprié pour réduire le temps de recherche de disque
L'optimisation de MySQL lui-même concerne principalement les paramètres de son fichier de configuration my.cnfEffectuer des ajustements d'optimisation. Par exemple, spécifiez la taille du tampon de requête MySQL, spécifiez le nombre maximum de processus de connexion autorisés par MySQL, etc.
6. Optimisation des applications
Utiliser le pool de connexions à la base de données
- Utiliser le cache de requêtes
- Son rôle est de stocker le texte de la requête de sélection et ses résultats correspondants. Si la même requête est reçue ultérieurement, le serveur obtiendra les résultats de la requête directement à partir du cache de requêtes. Le cache de requêtes convient aux tables rarement mises à jour. Lorsque les données de la table changent, les entrées pertinentes dans le cache de requêtes seront effacées
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!