Table des matières
Je recherche un emploi récemment. De nombreuses entreprises poseront des questions sur l'optimisation des bases de données lors des entretiens. Aujourd'hui, je vais résumer les problèmes d'optimisation des bases de données et utiliser la base de données MySQL comme exemple pour expliquer. " >Je recherche un emploi récemment. De nombreuses entreprises poseront des questions sur l'optimisation des bases de données lors des entretiens. Aujourd'hui, je vais résumer les problèmes d'optimisation des bases de données et utiliser la base de données MySQL comme exemple pour expliquer.
Maison base de données tutoriel mysql Plusieurs solutions d'optimisation de base de données MySQL

Plusieurs solutions d'optimisation de base de données MySQL

Jul 19, 2017 pm 05:21 PM
优化 数据库

Je recherche un emploi récemment. De nombreuses entreprises poseront des questions sur l'optimisation des bases de données lors des entretiens. Aujourd'hui, je vais résumer les problèmes d'optimisation des bases de données et utiliser la base de données MySQL comme exemple pour expliquer.

Pourquoi devrions-nous optimiser :
Avec le démarrage du projet proprement dit, la base de données s'exécutera pendant un certain temps, les paramètres initiaux de la base de données présenteront certaines différences par rapport aux performances réelles de la base de données. À ce stade, nous devons procéder à un ajustement d'optimisation.

L'optimisation des bases de données est un sujet vaste et peut être divisé en quatre grandes catégories :
》Performances de l'hôte
》Performances d'utilisation de la mémoire
》Performances de transmission réseau
》Performances d'exécution des instructions SQL [Ingénieur logiciel]


Voici quelques solutions d'optimisation SQL de base de données :

(01) Choisissez l'ordre le plus efficace des noms de tables (test écrit fréquent)

L'analyseur de base de données est basé on Les noms de table dans la clause FROM sont traités de droite à gauche,
La table écrite en dernier dans la clause FROM sera traitée en premier,
dans la clause FROM Lorsque la phrase contient plusieurs tables, vous devez sélectionner la table avec le plus petit nombre d'enregistrements et la mettre à la fin
S'il y a plus de 3 tables connectées à la requête, vous. vous devez sélectionner la table utilisée par d'autres tables. La table référencée vient en dernier.
Par exemple : recherchez le numéro d'employé, le nom, le salaire, l'échelon de salaire, le nom du département
sélectionnez emp.empno,emp.ename,emp.sal,salgrade.grade ,dept.dname
de salgrade,dept,emp
où (emp.deptno = dept.deptno) et (emp.sal entre salgrade.losal et salgrade. hisal)
1) Si les trois tables n'ont aucun rapport, écrivez la table avec le moins d'enregistrements et de noms de colonnes à la fin, et ainsi de suite
2) Si les trois tables sont liées, mettre la table avec le plus de références à la fin, et ainsi de suite

(02) L'ordre de connexion dans la clause WHERE (test écrit Test commun )

La base de données analyse la clause WHERE dans un ordre de droite à gauche. Selon ce principe, la connexion entre les tables doit être écrite à gauche des autres conditions WHERE. ,
Les conditions qui peuvent filtrer le nombre maximum d'enregistrements doivent être écrites à droite de la clause WHERE.
Par exemple : recherchez le numéro d'employé, le nom, le salaire, le nom du département
sélectionnez emp.empno,emp.ename,emp.sal,dept.dname
de emp,dept
où (emp.deptno = dept.deptno) et (emp.sal > 1500)

(03) Évitez d'utiliser le signe * dans la clause SELECT

Pendant le processus d'analyse, la base de données convertira tour à tour * en tous les noms de colonnes. Ce travail est effectué en interrogeant le dictionnaire de données, ce qui signifie que cela prendra plus de temps
Sélectionnez. empno,ename from emp;

(04) Supprimez tous les enregistrements de la table, remplacez DELETE par TRUNCATE

(05) Utilisez COMMIT autant que possible

car COMMIT libérera le point de restauration

( 06) Remplacez la clause HAVING par la clause WHERE

WHERE est exécutée en premier, HAVING est exécutée après

( 07 ) Utiliser des fonctions internes pour améliorer l'efficacité SQL

(08) Utiliser des alias de table

salgrade s

(09) Utiliser les alias de colonnes

ename e

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées Jul 18, 2024 am 05:48 AM

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Optimisation des programmes C++ : techniques de réduction de la complexité temporelle Optimisation des programmes C++ : techniques de réduction de la complexité temporelle Jun 01, 2024 am 11:19 AM

La complexité temporelle mesure le temps d'exécution d'un algorithme par rapport à la taille de l'entrée. Les conseils pour réduire la complexité temporelle des programmes C++ incluent : le choix des conteneurs appropriés (tels que vecteur, liste) pour optimiser le stockage et la gestion des données. Utilisez des algorithmes efficaces tels que le tri rapide pour réduire le temps de calcul. Éliminez les opérations multiples pour réduire le double comptage. Utilisez des branches conditionnelles pour éviter les calculs inutiles. Optimisez la recherche linéaire en utilisant des algorithmes plus rapides tels que la recherche binaire.

Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Jun 04, 2024 pm 01:42 PM

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Comment gérer les erreurs de connexion à la base de données en PHP Comment gérer les erreurs de connexion à la base de données en PHP Jun 05, 2024 pm 02:16 PM

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.

Comment utiliser les fonctions de rappel de base de données dans Golang ? Comment utiliser les fonctions de rappel de base de données dans Golang ? Jun 03, 2024 pm 02:20 PM

L'utilisation de la fonction de rappel de base de données dans Golang peut permettre : d'exécuter du code personnalisé une fois l'opération de base de données spécifiée terminée. Ajoutez un comportement personnalisé via des fonctions distinctes sans écrire de code supplémentaire. Des fonctions de rappel sont disponibles pour les opérations d'insertion, de mise à jour, de suppression et de requête. Vous devez utiliser la fonction sql.Exec, sql.QueryRow ou sql.Query pour utiliser la fonction de rappel.

Comment se connecter à une base de données distante à l'aide de Golang ? Comment se connecter à une base de données distante à l'aide de Golang ? Jun 01, 2024 pm 08:31 PM

Grâce au package base de données/sql de la bibliothèque standard Go, vous pouvez vous connecter à des bases de données distantes telles que MySQL, PostgreSQL ou SQLite : créez une chaîne de connexion contenant les informations de connexion à la base de données. Utilisez la fonction sql.Open() pour ouvrir une connexion à la base de données. Effectuez des opérations de base de données telles que des requêtes SQL et des opérations d'insertion. Utilisez defer pour fermer la connexion à la base de données afin de libérer des ressources.

Quels sont les moyens de résoudre les inefficacités des fonctions PHP ? Quels sont les moyens de résoudre les inefficacités des fonctions PHP ? May 02, 2024 pm 01:48 PM

Cinq façons d'optimiser l'efficacité des fonctions PHP : évitez la copie inutile de variables. Utilisez des références pour éviter la copie de variables. Évitez les appels de fonction répétés. Fonctions simples en ligne. Optimisation des boucles à l'aide de tableaux.

Comment gérer les connexions et les opérations de base de données en utilisant C++ ? Comment gérer les connexions et les opérations de base de données en utilisant C++ ? Jun 01, 2024 pm 07:24 PM

Utilisez la bibliothèque DataAccessObjects (DAO) en C++ pour connecter et exploiter la base de données, notamment en établissant des connexions à la base de données, en exécutant des requêtes SQL, en insérant de nouveaux enregistrements et en mettant à jour les enregistrements existants. Les étapes spécifiques sont : 1. Inclure les instructions de bibliothèque nécessaires ; 2. Ouvrir le fichier de base de données ; 3. Créer un objet Recordset pour exécuter des requêtes SQL ou manipuler des données ; 4. Parcourez les résultats ou mettez à jour les enregistrements en fonction de besoins spécifiques.

See all articles