General Log sur demande

Dans les nouveautés de MySQL 5.1, il y a l’activation / désactivation des logs sur demande. J’adore ce feature. Pour moi, c’est un outil de debug. Je m’en sers pour trouver des problèmes de performance ou de transactions qui sont souvent complexes à identifier dans une application avec une grosse architecture.

Le principe est simple: dans un environnement isolé, c’est-à-dire un environnement où vous savez que vous êtes le seul à travailler, accédez à l’interface problématique de votre application. Activez les logs avec la commande:

SET GLOBAL general_log = 1;

Lancez ensuite l’opération problématique. Lorsque terminé, désactivez de suite les logs:

SET GLOBAL general_log = 0;

Le log est maintenant rempli de toutes les requêtes effectuées durant l’opération.  C’est là que commence l’analyse. …

[Lire plus]
CMS Made Simple version 1.5.2

CMS Made Simple 1.5.2 "Caguas" est maintenant disponible pour téléchargement

Il s'agit d'une version corrective.

Un grand nombre de dysfonctionnements ont été corrigés. Certaines corrections etaient planifiées dans le centre de développement (Forge),et d'autres ont été ajoutées grâce aux signalements des membres de la communauté.

Ce paquet est certainement la version la plus stable et la plus riche en fonctionnalités meme si la seule véritable nouveauté de la 1.5.2 est la balise {page_image}.


Prévisions CMS Made Simple version 2:
CMS Made Simple bien plus qu'un CMS, c'est un framework complet nommé "SILK".
ADODB, ORM, Smarty, MVC et autres Design Patterns, jQuery, OpenID etc...


A propos de CMS Made Simple
CMS Made Simple est un système de gestion de contenu Open Source, distribué sous license GNU/GPL, extensible …

[Lire plus]
Utilisation du cache

Régulièrement, dans l'actualité l'utilisation d'un cache est mis en avant pour l'utilisation de vos sites webs. Mais la question se pose : "lequel choisir ?".
Il faut avant tout déterminer le langage (comme PHP), l'API ou encore le choix de la base de donnée pour retenir celui qui vous conviendra le mieux.
Le blog de Abhi Navsingh's en a retenu 4 et pour chacun d'eux, ils décrit le type de mise en cache, les avantages et les pièges pouvant apparaître. Ces 4 applications sont :
* WP-Cache utilisé dans wordpress - un système de fichiers basé mécanisme de mise en cache
* APC Cache - un système de mise en mémoire cache opcode
* Memcache - un système de cache en mémoire
* Requête de mise en cache - mécanisme de mise en cache dans MySQL

[Lire plus]
lemug.fr

Le MySQL User Group est une association européenne dont le principal but est de promouvoir la base de données MySQL auprès des professionnels et de participer à son développement.

Ça fait déjà un moment que Nexen.net publie des articles sur “lemug” sans trop préciser qui était derrière l’initiative. Cette semaine, le site a officiellement été lancé. Je n’ai malheureusement pas pu en apprendre beaucoup plus sur le M.U.G. L’ouverture du site web telle qu’annoncée par nexen semble être un petit coup de marketing raté. Heureusement, je me réjouis de voir que cette petite communauté semble beaucoup plus active que leur site Web. On peut voir sur la seule page de leur …

[Lire plus]
J’ai perdu mon mot de passe root…

En cas de perte du mot de passe root surtout si c’est votre seul compte (super) administrateur, vous vous trouvez dans une situation pour le moins embarrassante.
MySQL propose un moyen de s’en sortir. Certes, si le mot de passe est perdu vous ne pourrai pas le récupérer, car il est stocké haché dans la base:

mysql> SELECT user, password FROM mysql.user;
 +---------+-------------------------------------------+
 | user    | password                                  |
 +---------+-------------------------------------------+
 | root    | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
 +---------+-------------------------------------------+
 1 rows in set (0.39 sec)

Néanmoins il est possible de le changer. Voici les étapes à suivre:

1/ Arrêter le serveur MySQL

Cela ne devrait pas poser trop de problèmes:
mysql stop (sous linux)
NET STOP MySQL (sous windows)

[Lire plus]
Ouverture du Site LeMug

C'est officiel depuis hier, l'association des Utilisateurs de MySQL ont lancé leur site internet en version officiel.
Alors consulté le communiqué officiel

MySQL 5.1.31

MySQL devrait sortir ce mois-ci la version 5.1.31, qui corrigera entre autre le bug #38883 concernant InnoDB, qui cause des crashs aléatoires, lors de l'interrogation du status innoDB du serveur:

  • SHOW INNODB STATUS
  • innodb-status-file=1
  • MySQL enterprise monitor
MyISAM ou InnoDB ?

Un ami me demandait aujourd’hui si une application qu’il utilise à son travail pourrait être plus performante si les tables étaient Innodb plutôt que MyISAM ? Oui. Non. Peut-être. Il n’y a pas de réponse à cette question; il y beaucoup trop de facteurs à considérer.

Peter Zaitsev a publié hier un article sur le sujet. Comme il indique, il faut d’abord s’interroger pour savoir “pourquoi” les tables sont MyISAM à la base. Le sont-ils pour une raison particulière ou parce qu’elles utilisent le storage engine par défaut de MySQL ?

Les 2 storages engines possèdent des avantages différents qui les rendent aussi performant l’un que l’autre, dépendamment de l’utilisation qu’on en fait. Pour répondre adéquatement à mon ami, il aurait fallu que je connaisse quel genre de requêtes son …

[Lire plus]
Penser au papier comme a Internet

En rentrant chez moi, un de ces soirs comme un autre soir... Une réflexion m'est apparue... et je pense que je ne suis pas le seul à avoir poser la question !!!
Si vous ne possédez pas d'ordinateurs à porter de main et que vous vous ennuyez, il existe des magazines papiers... comme PHP Solution
Dans ce numéro de PHP Solution, qui vient de sortir en librairie, parle de nombreux points :

  • Le pouvoir du multimédia
  • Streaming vidéo
  • Les nouvelles fonctionnalités de PHP5.3
  • XOAD et vos applications AJAX en PHP
  • Arcanes d'OOP dans PHP5
  • Manipulez XML avec MySQL 5.1


Et avec quelques articles bonus :

  • Symfony
  • Sécurité avec PDO
  • PHP/Curl
  • etc...


Et quelques cours vidéo PHPMyAdmin et SQLiteManager...

  •   …
[Lire plus]
MySQL 5 : Les vues — (part 7/7)

(<- précédent)

Conserver la structure d’une table si elle doit être modifiée

La problématique est de mettre à jour le schéma de l’application en changeant la structure de certaines tables.

Changer le schéma a comme principal impact d’obliger de modifier les requêtes de l’application. Il sera donc nécessaire de les identifier pour les mettre à jour à leur tour, ce qui peut rapidement devenir fastidieux. Au travers de l’exemple qui suit, nous allons créer une vue qui va masquer le changement de table ce qui nous évite de modifier les requêtes applicatives. Une nouvelle version de l’application pourra utiliser la nouvelle table sans être obligé d’utiliser la vue, on assure ainsi la compatibilité ascendante.

Ma table de départ est la table livre:

CREATE TABLE 'livre' …
[Lire plus]