MySQL Workbench : lenteur de la première requête

Depuis quelques jours, j'étais confronté à un problème de lenteur de MySQL Workbench lors de l'exécution de la première requête après l'ouverture du logiciel. Comme on dit : ça ramait ! Une fois cette première requête exécutée, le logiciel fonctionnait à nouveau "parfaitement".

Bref, ça me "gavait" profondément de devoir attendre de nombreuses secondes que cette première requête s'exécute. Après quelques recherches, j'ai enfin réussi à résoudre ce petit problème et la solution est, pour le moins, d'une simplicité enfantine.

Pour résumer, MySQL Workbench construit un historique au fur et à mesure de votre utilisation. Ainsi, toutes les requêtes saisies sont enregistrées dans un fichier. Lorsqu'on lance une première requête après démarrage du logiciel, ce dernier parcours le fichier contenant l'historique. D'où la lenteur.

Vous l'aurez compris en lisant ces quelques lignes, il suffit donc de supprimer l'historique pour retrouver un fonctionnement "normal" de l'outil dès la première requête. Pour ce faire, rien de plus simple :

  • ouvrez MySQL Workbench
  • connectez vous à une base de données
  • dans le panneau du bas "Output", sélectionnez "History Output"

MySQL Workbench afficher historique

  • faites un clic droit dans les panneaux des dates et cliquez sur "Delete All Logs"

MySQL Workbench suppression de l'historique

 

Et le tour est joué. ^^ Plus de lenteur sur la première requête au démarrage.

 

Source : https://stackoverflow.com/questions/1786870/mysql-slow-on-first-query-then-fast-for-related-queries/49306659#49306659

Windows Server 2012 : mise à jour d'Apache, Php et des drivers SQL Server

Depuis peu, je découvre les joies (ironie inside) de la maintenance des outils Apache, Php et MySQL sur Windows Server 2012. Si sur Linux il suffit d'une petite ligne de commande pour maintenir ces services à jour, sur Windows, ce n'est pas la même histoire. Comme vous le constaterez par vous-même, ce n'est pas bien compliqué. Ce billet est donc plus un pense-bête qu'un How-To à proprement parler.

Attention, avant toute opération de mise à jour, il convient de jeter un petit coup d'œil aux ChangeLogs des différents outils pour vérifier que leurs mises à niveau ne vont pas "casser" vos sites web.

 

Apache 2.4.20 vers 2.4.25

Personnellement, j'ai fait le choix d'ApacheLounge pour mon environnement Windows Server 2012. ApacheLounge fourni les binaires Apache à jour pour environnement Windows.

Cet exemple repose sur la mise à jour d'Apache 2.4.20 vers la version 2.4.25. Pour un saut de version (ex. Apache 2.2 vers 2.4), consultez la documentation dédiée sur le site d'Apache.

La mise à jour, bien que très simple à réaliser, est tout de même plus "lourde" qu'un simple sudo apt update && sudo apt upgrade.

Pour mettre à jour Apache, il vous faut :

  1. Télécharger le fichier .zip de la dernière version d'Apache sur le site  ApacheLounge
  2. Renommer le répertoire de votre version d'origine (ex. Apache24_old). Ce sera votre sauvegarde.
  3. Dézipper la version téléchargée d'Apache en conservant le nom du répertoire d'origine (ex. Apache24)
  4. Copier les fichiers de conf et les composants additionnels dont vous avez besoin du répertoire sauvegardé (Apache24_old) et coller-les dans le répertoire Apache24.

Je vous recommande de conserver votre répertoire Apache24_old jusqu'à la prochaine mise à jour. Juste au cas où...

Et le tour est joué. :)

Source : https://www.apachelounge.com/viewtopic.php?t=5768

 

Php 7.0.7 vers 7.1.6

Tout comme pour Apache, la mise à jour de Php est relativement aisée. Pour ce faire :

  1. Téléchargez la dernière version de Php qui convient à votre architecture (x86 pour les OS 32bits / x64 pour les OS 64 bits). Si vous utilisez un serveur Apache, tournez vous vers la version TS (Thread Safe). Si vous utilisez IIS, optez pour la version NTS (Non Thread Safe). Dans mon cas, je pars donc sur la version 7.1.6 VC14 x64.
  2. Renommer le répertoire de votre version d'origine (ex. php7.0). Cela sera votre sauvegarde.
  3. Dézipper la dernière version de Php en conservant le nom du répertoire d'origine (ex. php). Cela évitera d'avoir à redéfinir les variables d'environnement.
  4. Copiez les fichiers de conf et les extensions additionnelles dont vous avez besoin du répertoire sauvegardé php7.0 et collez-les dans le répertoire php.

Tout comme pour Apache, je vous conseille de conserver votre répertoire php7.0 qui vous permettra de rebasculer sur cette version de Php en cas de pépins.

Et le tour est joué. ^^

 

Drivers SQL Server pour Php

Avant toute chose, il vous faudra télécharger et installer Microsoft ODBC Driver for SQL Server. La version à télécharger dépend de la version de votre serveur. Pour ma part, j'ai installé la version 11.

Les drivers SQL Server pour Php 7.1.x sont disponibles sur GitHub, projet msphpsql.

Dézippez et copiez les fichiers php_pdo_sqlsrv_71_ts.dll et php_sqlsrv_71_ts.dll et collez-les dans le répertoire php/ext/

Modifiez ensuite le fichier php.ini en ajoutant les lignes suivantes à la fin de la liste des extensions :

extension=php_sqlsrv_71_ts.dll
extension=php_pdo_sqlsrv_71_ts.dll

 

Redémarrez votre serveur Apache.

Et le tour est joué ! ^^

 

MySQL 5.6.34 vers 5.7.18.1

Bon, sur ce coup-là, j'avoue avoir tout foiré... d'où l'absence de MySQL dans le titre. Finalement, j'ai dû me résoudre à réinstaller totalement MySQL Server via MySQL Installer. :( D'où l'importance des sauvegardes des bases de données. :P

Ajoutez les drivers sqlsrv à Php7 en 5 étapes

Aujourd'hui, je vous propose un petit Mémo/Tuto simple, rapide et efficace : ajouter les drivers sqlsrv à Php7 64 bits en 5 étapes. Comme d'habitude, si vous souhaitez des compléments d'information, n'hésitez pas à me contacter. Vous êtes prêts ? C'est parti !

phpinfo pdo_sqlsrv

1. Téléchargez les .dll (archive zip) sur le Github officiel de l'équipe de développement Microsoft : https://github.com/Azure/msphpsql/releases

2. Extrayez l'archive et copiez les fichiers php_sqlsrv_7_ts.dll, php_pdo_sqlsrv_7_ts.dll et dans le répertoire /ext de php (C:/php/ext/).

3. Ouvrez le fichier php.ini et ajoutez les lignes suivantes à la suite de la liste des extensions :

extension=php_sqlsrv_7_ts.dll
extension=php_pdo_sqlsrv_7_ts.dll

 

4. Téléchargez et installez Microsoft® ODBC Driver 11 for SQL Server®

5. Redémarrez Apache

Et le tour est joué :)

Installation d'Apache et Php sur Windows

Aujourd'hui, je vous propose un petit mémo rapide sur l'installation d'un serveur Apache et de PHP sur Windows (dans mon cas, Windows Server 2012). Comme il s'agit d'un mémo pense-bête, vous n'y trouverez pas beaucoup d'explications. Cependant, si vous avez des questions, n'hésitez pas… les commentaires sont là pour ça. :)

N.B. : le mémo ne concerne que l'installation et la configuration de base. Je n'aborderai donc pas la question de la sécurisation.

Sommaire :

  1. Téléchargement et décompression des archives
  2. Édition des fichiers de configuration httpd.conf et php.ini
  3. Test de l'installation
  4. Automatisation du démarrage du service apache (httpd.exe)

Lire la suite de Installation d'Apache et Php sur Windows

php5.6 sur WampServer 2.5

Edit du 16/06/2017 : Cette procédure fonctionne également avec php7.1.6 sur WampServer 3.0.6 ^^

 

Cette semaine, au boulot, nous sommes passés à php5.6.16 sur notre serveur de production. Pour développer efficacement, il m’a donc fallu upgrader mon environnement de développement.

Ça tombe bien, WampServer 2.5 (Wamp, pour les intimes) permet d’installer plusieurs versions de php côte à côte et de switcher de l’une à l’autre aisément. Il faut malgré tout respecter la procédure d’installation des nouvelles (ou anciennes) versions de php que l’on souhaite ajouter.

Je vous propose donc de découvrir comment installer php5.6.16 aux côtés de la version 5.5.12 fourni de base avec Wamp.

Si ce n’est déjà fait, téléchargez WampServer 2.5 (http://www.wampserver.com/) puis procédez à son installation.
Personnellement, j’installe toujours Wamp dans le dossier proposé par défaut : c:/wamp. Si vous n’avez pas fait ce choix, pensez à adapter le chemin tout au long du tuto.

Lire la suite de php5.6 sur WampServer 2.5