| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> PHP /MySQL Programmation >> Content
    Ma Recherche est rapide dans MySQL et lente en PHP
    Améliorer vos temps de requête MySQL dans votre script PHP augmente votre vitesse de navigation et empêche temps scripts outs de se produire. PHP est un langage de script avec des fonctionnalités pour vous aider à créer des pages web dynamiques. MySQL est un système de gestion de base de données relationnelle qui permet à plusieurs utilisateurs d'accéder à des bases de données sur un serveur. Enquêter sur la cause de requêtes lentes avec l'énoncé «expliquer» , permettant le journal des requêtes lentes et chronométrer vos requêtes esprit la fonction " microtime " . En utilisant l'extension PDO MYSQL et mettre à jour votre version de MySQL PHP et peut également aider à accélérer les requêtes. Instructions
    1

    Mettez à jour votre PHP et MySQL pour les dernières versions de leurs sites Web. Les anciennes versions entrent parfois en conflit les uns avec les autres tandis que les versions plus récentes disposent des corrections de bugs et sont plus susceptibles d' être compatibles les uns avec les autres .
    2

    Ouvrez votre fichier " my.cnf " de MySQL dans un éditeur de texte tel que Windows Bloc-notes. Recherchez et sélectionnez l'option " log_slow_queries " sur "ON " au lieu de "OFF". Réglez le " long_query_time " à un petit nombre , comme "1" et notez le répertoire " log-slow -queries " . Recharger votre service MySQL . Le "mysql - slow.log " va maintenant afficher les requêtes qui prennent beaucoup de temps à s'exécuter. Cela vous aidera à identifier à quelle fréquence votre requête s'exécute lentement .
    3

    place la déclaration «expliquer» dans votre requête avant une déclaration "SELECT" pour récupérer les informations de l'optimiseur sur la façon dont votre requête sera exécutée. Le résultat obtenu peut révéler la cause de votre requête lente, comme un index manquant
    4

    Time votre requête PHP avec la fonction " microtime " en ajoutant le code suivant où votre requête se trouve: .

    $ TIME_BEG = microtime (true);

    //placez votre requête ici

    $ TIME_END = microtime (true);

    $ time_res = TIME_END $ - $ time_start ;

    echo " la requête a pris $ time_res secondes " ;

    Cela permet de confirmer que la requête est la partie lente et pas une autre partie de votre code. Exécutez le code plusieurs fois jusqu'à ce que vous avez un temps constant. Comparez cette valeur de temps lorsque vous apportez des modifications futures de chronométrage
    5

    Vérifier les erreurs avec la fonction " mysql_error " en ajoutant le code suivant où votre requête se trouve: .

    $ result = mysql_query ( $ query ) ;

    si {

    $ msg = 'Erreur requête:' de mysql_error () ($ result !) . . "\\ n" ; die


    ( $ msg )

    }
    6

    utiliser l'extension PDO_MYSQL PHP pour interroger votre base de données au lieu de " mysql_query " standard ou fonctions " mysqli ". L'extension utilise PDO_MYSQL soutien de déclaration préparée natif de MySQL , qui peut aider à accélérer vos requêtes. Le code suivant est un exemple de comment envoyer une requête MySQL avec l'extension PDO_MYSQL :

    $ db_info = ' mysql : host = localhost ; port = 3306 ; dbname = mydb ';

    $ user = 'username' ;

    $ pass = 'password' ;

    try {

    $ db_handle = new PDO ($ db_info , $ user, $ pass ) ;

    }

    catch ( PDOException $ exception) {

    printf ( "Erreur: % s ", $ exception -> getMessage ());

    }

    $ db_handle -> setAttribute ( PDO :: ATTR_ERRMODE , PDO :: ERRMODE_EXCEPTION ) ;

    $ db_handle -> setAttribute ( PDO :: PDO_ATTR_AUTOCOMMIT , false);
    < p> $ sql = "SELECT * FROM ma_table " ;

    $ result_set = $ db_handle -> query ( $ sql ) ;

    $ result_set -> setFetchMode ( PDO :: FETCH_ASSOC ) ;

    while ($ row = $ result_set - > fetch ()) {

    $ data = $ row [" mycolumn "] ; }


    < p> $ result_set -> closeCursor ();

    Previous :

    next :
      articles connexes
    ·Comment établir une liste de lignes au choix avec PHP …
    ·Comment lire un fichier texte en PHP 
    ·Comment installer les fichiers MySQL en PHP 
    ·Comment voir site PHP sur localhost 
    ·Phases de la programmation PHP 
    ·Comment faire pour déboguer Crashes PHP 
    ·Comment ping depuis PL /SQL 
    ·Comment éviter All in s'inscrit dans MySQL 
    ·Comment heure d'entrée en MySQL 
    ·Comment créer une fonction PHP 
      articles en vedette
    ·Comment convertir une liste en une chaîne en Java 
    ·Comment utiliser SQLite en Vb.net 
    ·Comment faire pour convertir un incorrect PHP Date 
    ·Comment faire pour modifier les titres dans la barre de…
    ·Effets Rollover DIV 
    ·Comment créer une liste déroulante dans Visual Basic 
    ·Joomla Analytics Aide 
    ·Conséquences des débordements de buffer 
    ·Comment faire pour créer un fichier d'informations PHP…
    ·Différence entre onbeforeunload & OnUnload 
    Copyright © Connaissances Informatiques http://fr.wingwit.com