Actualité MySQL 59H : Problème daccès au site cet aprèm ! Vous l’aurez sans doute remarque l’acces au site etait fortement perturbe cet apres-midi, voir impossible avec un message d’erreur. Le serveur MySQL a subitement decide de partir aux fraises pour n’en revenir qu’en fin d’apres midi. En fait l’explication est toute simple, depuis quelque temps nous connaissant une belle progression du nombre de visiteurs (et de pages vues) sur le portail et le forum. Une charge que le serveur a de plus en plus de mal a absorber tout seul. Il sera change tres prochainement soit par un plus puissant, soit par deux serveurs si besoin. Desole pour le desagrement, mais quelques optimisations mises en place cet apres midi devraient permettre un bon fonctionnement du site ! Merci de venir de plus en plus nombreux, et merci aussi de votre fidelite ! www.59hardware.net | 3/18/10 10:37 PM Solutions Linux 2010 : "Audit et optimisation MySQL 5" chez Eyrolles "Audit et optimisation MySQL 5 - Bonnes pratiques pour l'administrateur" vient de paraitre chez Eyrolles. Un ouvrage signe Pascal BORGHINO, Olivier DASINI et Arnaud GADAL. - Livres www.toolinux.com | 3/17/10 11:46 PM Digg adhère au mouvement NoSQL Le site Digg vient d’abandonner la base de donnees MySQL au profit de la base de donnees non-relationnelle open source Apache Cassandra. Il renforce ainsi le mouvement NoSQL, initie par d’autres entreprises. www.linformaticien.com | 3/16/10 1:26 PM Digg vient renforcer le mouvement pro-NoSQL Apres Google, Facebook, Amazon, LinkedIn, un autre geant du web vient de laisser tomber les bases de donnees MySQL. Le site Digg, qui permet aux internautes de voter pour des articles issus de medias ou [...] www.clubic.com | 3/16/10 8:50 AM Digg adopte à son tour NoSQL... et abandonne MySQL Le site communautaire Digg, confronte a des volumes croissants de donnees, refond son architecture autour d'une base libre dite NoSQL : Cassandra. Twitter l'a precede il y a quelques semaines. rss.01net.com | 3/15/10 4:35 PM 10 astuces SQL Pour ameliorer vos requetes MySQL ou SQL en general, Jean Batiste Jung propose 10 astuces pour ameliorer vos requetes SQL.
Les astuces proposes sont :
- Conception de la base de donnees
- Optimisation
- Requete plus rapide
- Selection
- Utilisation de la fonction LIMIT
- Eviter les requetes en boucle
- Jointure
- Union
- Caracteres generiques
- Index
- 10 sql tips to speed up your database www.lephpfacile.com | 3/12/10 4:38 PM 10 astuces SQL Pour améliorer vos requêtes MySQL ou SQL en général, Jean Batiste Jung propose 10 astuces pour améliorer vos requêtes SQL.
Les astuces proposés sont :
Conception de la base de données
Optimisation
Requete plus rapide
Sélection
Utilisation de la fonction LIMIT
Eviter les requêtes en boucle
Jointure
Union
Caractères génériques
Index 10 sql tips to speed up your database (0 visite) www.nexen.net | 3/11/10 11:51 PM 10 astuces SQL Pour ameliorer vos requetes MySQL ou SQL en general, Jean Batiste Jung propose 10 astuces pour ameliorer vos requetes SQL. Les astuces proposes sont : Conception de la base de donnees Optimisation Requete plus rapide Selection Utilisation de la fonction LIMIT Eviter les requetes en boucle Jointure Union Caracteres generiques Index 10 sql tips to speed up your database (0 visite) www.nexen.net | 3/11/10 11:51 PM Informations CPU d'un serveur MySQL De nombreux outils existent pour obtenir des informations sur vos données MySQL.
La plupart des outils proposent une utilisation en ligne de commande ou par interface graphique. Cependant il existe une autre manière d'obtenir ces informations sans utiliser ce mode shell.
Le site Livejournal montre en quelques lignes comment obtenir les informations CPU de votre serveur MySQL. Get Linux performance information (0 visite) www.nexen.net | 3/10/10 6:53 PM Informations CPU d'un serveur MySQL De nombreux outils existent pour obtenir des informations sur vos donnees MySQL. La plupart des outils proposent une utilisation en ligne de commande ou par interface graphique. Cependant il existe une autre maniere d'obtenir ces informations sans utiliser ce mode shell. Le site Livejournal montre en quelques lignes comment obtenir les informations CPU de votre serveur MySQL. Get Linux performance information (0 visite) www.nexen.net | 3/10/10 6:53 PM Sortie du livre: Audit et optimisation – MySQL 5 Pascal Borghino, Olivier Dasini, Arnaud Gadal et Eyrolles ont l’honneur de vous annoncer la sortie du livre Audit et optimisation MySQL 5.
Pour la première fois, les meilleurs experts de chez Yahoo!, Orange Business Services et Virgin mobile livrent leur expérience de terrain... en français
A l’occasion du salon Solutions Linux/Open Source qui se tiendra du 16 au 18 mars à Paris Expo-Porte de Versailles, cet ouvrage sera disponible en exclusivité et en avant-première sur le stand Eyrolles (n°C35).
L’ouvrage sera disponible en librairie le 25 mars 2010. Vous pouvez cependant déjà le commander sur les sites spécialisés.
Au sommaire:
CHAPITRE 1
Gérer une situation d’urgence avec MySQL ………………………….. 1
CHAPITRE 2
Choisir son serveur MySQL ………………………………………………… 19
CHAPITRE 3
Les moteurs de stockage …………………………………………………… 49
CHAPITRE 4
Surveiller son serveur MySQL…………………………………………….. 81
CHAPITRE 5
Exploiter les journaux de MySQL ……………………………………… 141
CHAPITRE 6
Optimiser sa base de données : du schéma aux requêtes ….. 163
CHAPITRE 7
Optimiser son serveur mySQL ………………………………………….. 193
CHAPITRE 8
La réplication MySQL ………………………………………………………. 217
CHAPITRE 9
Où trouver de l’aide ? ……………………………………………………… 253 dasini.net | 3/9/10 4:16 PM Sortie du livre: Audit et optimisation – MySQL 5 Pascal Borghino, Olivier Dasini, Arnaud Gadal et Eyrolles ont l’honneur de vous annoncer la sortie du livre Audit et optimisation MySQL 5. Pour la premiere fois, les meilleurs experts de chez Yahoo!, Orange Business Services et Virgin mobile livrent leur experience de terrain... en francais A l’occasion du salon Solutions Linux/Open Source qui se tiendra du 16 au 18 mars a Paris Expo-Porte de Versailles, cet ouvrage sera disponible en exclusivite et en avant-premiere sur le stand Eyrolles (n°C35). L’ouvrage sera disponible en librairie le 25 mars 2010. Vous pouvez cependant deja le commander sur les sites specialises. Au sommaire: CHAPITRE 1 Gerer une situation d’urgence avec MySQL ………………………….. 1 CHAPITRE 2 Choisir son serveur MySQL ………………………………………………… 19 CHAPITRE 3 Les moteurs de stockage …………………………………………………… 49 CHAPITRE 4 Surveiller son serveur MySQL…………………………………………….. 81 CHAPITRE 5 Exploiter les journaux de MySQL ……………………………………… 141 CHAPITRE 6 Optimiser sa base de donnees : du schema aux requetes ….. 163 CHAPITRE 7 Optimiser son serveur mySQL ………………………………………….. 193 CHAPITRE 8 La replication MySQL ………………………………………………………. 217 CHAPITRE 9 Ou trouver de l’aide ? ……………………………………………………… 253 dasini.net | 3/9/10 4:16 PM EasyPHP 5.3.2 est disponible Moins d'un mois apres la 5.3.1, EasyPHP 5.3.2 est disponible en telechargement. Cette nouvelle version fait suite a la sortie de PHP 5.3.2. Comme toujours, EasyPHP peut s'installer n'importe ou : disque dur, cle USB ...
L'interface d'administration d'EasyPHP permet de:
- modifier directement le repertoire DocRoot d'Apache et de lister ce qu'il contient
- creer/supprimer des alias
- gerer MySQL avec PhpMyAdmin
- declarer le TimeZone pour PHP.
- exceder au phpinfo
EasyPHP est maintenant traduit en 7 langues (et d'autres vont venir).
Website : www.easyphp.org
Facebook page : www.facebook.com/pages/EasyPHP/100608599258
Twitter : www.twitter.com/easyphp
Sourceforge : www.sourceforge.net/projects/quickeasyphp/
Les versions les plus recentes sont:
** EasyPHP 5.3.2 **
- PHP 5.3.2
- Apache 2.2.14
- MySQL 5.1.43
- PhpMyAdmin 3.2.5
** EasyPHP 5.2.10 **
- PHP 5.2.10
- Apache 2.2.13
- MySQL 5.1.37
- PhpMyAdmin 3.2.1
- SQLite 2.8.17
- Pecl 5.2.6
** EasyPHP 6.0dev **
- PHP 6.0dev [090817]
- Apache 2.2.13
- MySQL 5.1.37
- PhpMyAdmin 3.2.1
Cordialement
L'equipe d'EasyPHP
Proposé par Laurent Abbal www.phpindex.com | 3/8/10 12:00 AM EasyPHP 5.3.2 est disponible Moins d'un mois apres la 5.3.1, EasyPHP 5.3.2 est disponible en telechargement. Cette nouvelle version fait suite a la sortie de PHP 5.3.2. Comme toujours, EasyPHP peut s'installer n'importe ou : disque dur, cle USB ... L'interface d'administration d'EasyPHP permet de: - modifier directement le repertoire DocRoot d'Apache et de lister ce qu'il contient - creer/supprimer des alias - gerer MySQL avec PhpMyAdmin - declarer le TimeZone pour PHP. - exceder au phpinfo EasyPHP est maintenant traduit en 7 langues (et d'autres vont venir). Website : www.easyphp.org Facebook page : www.facebook.com/pages/EasyPHP/100608599258 Twitter : www.twitter.com/easyphp Sourceforge : www.sourceforge.net/projects/quickeasyphp/ Les versions les plus recentes sont: ** EasyPHP 5.3.2 ** - PHP 5.3.2 - Apache 2.2.14 - MySQL 5.1.43 - PhpMyAdmin 3.2.5 ** EasyPHP 5.2.10 ** - PHP 5.2.10 - Apache 2.2.13 - MySQL 5.1.37 - PhpMyAdmin 3.2.1 - SQLite 2.8.17 - Pecl 5.2.6 ** EasyPHP 6.0dev ** - PHP 6.0dev [090817] - Apache 2.2.13 - MySQL 5.1.37 - PhpMyAdmin 3.2.1 Cordialement L'equipe d'EasyPHP Propose par Laurent Abbal www.phpindex.com | 3/8/10 12:00 AM Les logiciels libres les plus prometteurs Le site Indexel a regroupe une liste des logiciels libres qui seront peut-etre les logiciels indispensables pour le futur. La liste propose 13 logiciels, touchant de nombreux secteurs.
Cette liste couvre des logiciels allant d'Android a Asterisk, mais aussi bien des logiciels libres de Firefox a une plate forme LAMP (Linux Apache MySQL PHP).
Les secteurs importants sont :
- Systeme d'exploitation mobile : Chrome OS et Android
- Virtualisation : KVM
- ToIP : Asterisk
- ETL : Talend Open Studio
- CMS : Drupal et Alfresco
- ERP : le mode SaaS comme argument de la reversibilite
- Messagerie : Raindrop
- Web 2.0 : OpenStreetMap et Piwik
- Les 13 logiciels libres les plus prometteurs www.lephpfacile.com | 3/7/10 10:23 PM Les logiciels libres les plus prometteurs Le site Indexel a regroupé une liste des logiciels libres qui seront peut-être les logiciels indispensables pour le futur. La liste propose 13 logiciels, touchant de nombreux secteurs.
Cette liste couvre des logiciels allant d'Android à Asterisk, mais aussi bien des logiciels libres de Firefox à une plate forme LAMP (Linux Apache MySQL PHP).
Les secteurs importants sont :
Système d'exploitation mobile : Chrome OS et Android
Virtualisation : KVM
ToIP : Asterisk
ETL : Talend Open Studio
CMS : Drupal et Alfresco
ERP : le mode SaaS comme argument de la réversibilité
Messagerie : Raindrop
Web 2.0 : OpenStreetMap et Piwik www.nexen.net | 3/7/10 9:08 AM Les logiciels libres les plus prometteurs Le site Indexel a regroupé une liste des logiciels libres qui seront peut-être les logiciels indispensables pour le futur. La liste propose 13 logiciels, touchant de nombreux secteurs.
Cette liste couvre des logiciels allant d'Android à Asterisk, mais aussi bien des logiciels libres de Firefox à une plate forme LAMP (Linux Apache MySQL PHP).
Les secteurs importants sont :
Système d'exploitation mobile : Chrome OS et Android
Virtualisation : KVM
ToIP : Asterisk
ETL : Talend Open Studio
CMS : Drupal et Alfresco
ERP : le mode SaaS comme argument de la réversibilité
Messagerie : Raindrop
Web 2.0 : OpenStreetMap et Piwik Les 13 logiciels libres les plus prometteurs (0 visite) www.nexen.net | 3/7/10 9:08 AM Les logiciels libres les plus prometteurs Le site Indexel a regroupe une liste des logiciels libres qui seront peut-etre les logiciels indispensables pour le futur. La liste propose 13 logiciels, touchant de nombreux secteurs. Cette liste couvre des logiciels allant d'Android a Asterisk, mais aussi bien des logiciels libres de Firefox a une plate forme LAMP (Linux Apache MySQL PHP). Les secteurs importants sont : Systeme d'exploitation mobile : Chrome OS et Android Virtualisation : KVM ToIP : Asterisk ETL : Talend Open Studio CMS : Drupal et Alfresco ERP : le mode SaaS comme argument de la reversibilite Messagerie : Raindrop Web 2.0 : OpenStreetMap et Piwik Les 13 logiciels libres les plus prometteurs (0 visite) www.nexen.net | 3/7/10 9:08 AM Les logiciels libres les plus prometteurs Le site Indexel a regroupe une liste des logiciels libres qui seront peut-etre les logiciels indispensables pour le futur. La liste propose 13 logiciels, touchant de nombreux secteurs. Cette liste couvre des logiciels allant d'Android a Asterisk, mais aussi bien des logiciels libres de Firefox a une plate forme LAMP (Linux Apache MySQL PHP). Les secteurs importants sont : Systeme d'exploitation mobile : Chrome OS et Android Virtualisation : KVM ToIP : Asterisk ETL : Talend Open Studio CMS : Drupal et Alfresco ERP : le mode SaaS comme argument de la reversibilite Messagerie : Raindrop Web 2.0 : OpenStreetMap et Piwik www.nexen.net | 3/7/10 9:08 AM Livre PHP et MySQL -MySQLi – PDO 2eme édition Comme beaucoup de développeurs et développeuses, lorsqu'il faut se faut pencher sur un nouveau langage ou une nouvelle technologie, vous recherchez des exemples, des cas pratiques, des docs... pour démarrer rapidement votre projet.
Il s'agit de la deuxième édition du livre « PHP et MySQL – MySQLi – PDO, construisez votre application » aux éditions ENI qui montre sous la forme d'un cas pratique par où commencer et couvre de nombreux points.
L'ouvrage propose 3 applications permettant de communiquer avec des bases de données MySQL, MySQLi et PDO et une application supplémentaire au format « objet ».
Cette nouvelle édition propose de nombreuses évolutions touchant les captcha, les namespaces...
PHP et MYSQL - MySQLi - PDO (2ème édition) www.nexen.net | 3/7/10 7:23 AM Livre PHP et MySQL -MySQLi – PDO 2eme édition Comme beaucoup de developpeurs et developpeuses, lorsqu'il faut se faut pencher sur un nouveau langage ou une nouvelle technologie, vous recherchez des exemples, des cas pratiques, des docs... pour demarrer rapidement votre projet. Il s'agit de la deuxieme edition du livre « PHP et MySQL – MySQLi – PDO, construisez votre application » aux editions ENI qui montre sous la forme d'un cas pratique par ou commencer et couvre de nombreux points. L'ouvrage propose 3 applications permettant de communiquer avec des bases de donnees MySQL, MySQLi et PDO et une application supplementaire au format « objet ». Cette nouvelle edition propose de nombreuses evolutions touchant les captcha, les namespaces... PHP et MYSQL - MySQLi - PDO (2eme edition) www.nexen.net | 3/7/10 7:23 AM Widget en PHP et MySQL et Jquery Les Widgets permettent d'animer vos sites internet de différentes manières et surtout de personnaliser votre site web.
Il existe différents langages pour réaliser des Widgets, mais pour vous lancer sur ce point, vous pouvez vous appuyer sur le tutorial publié sur tutorialzine.com
Ce tutorial montre une façon simple de savoir qui est présent sur votre site internet et par la même occasion utiliser PHP, MySQL et Jquery. www.nexen.net | 3/6/10 5:38 AM Widget en PHP et MySQL et Jquery Les Widgets permettent d'animer vos sites internets sous différentes manières et surtout de personnalisé à votre façon votre site web.
Il existe différentes langages pour réaliser des Widgets, mais pour se lancer sur ce point, vous pouvez vous appuyer sur le tutorial publié sur tutorialzine.com
Ce tutorial va montrer une façon simple de savoir qui est présent sur votre site internet et par la même occasion utilisé PHP, MySQL et Jquery. Who Is Online : Widget With PHP, MySQL & jQuery (0 visite) www.nexen.net | 3/6/10 5:38 AM Widget en PHP et MySQL et Jquery Les Widgets permettent d'animer vos sites internets sous differentes manieres et surtout de personnalise a votre facon votre site web. Il existe differentes langages pour realiser des Widgets, mais pour se lancer sur ce point, vous pouvez vous appuyer sur le tutorial publie sur tutorialzine.com Ce tutorial va montrer une facon simple de savoir qui est present sur votre site internet et par la meme occasion utilise PHP, MySQL et Jquery. Who Is Online : Widget With PHP, MySQL & jQuery (0 visite) www.nexen.net | 3/6/10 5:38 AM Widget en PHP et MySQL et Jquery Les Widgets permettent d'animer vos sites internet de differentes manieres et surtout de personnaliser votre site web. Il existe differents langages pour realiser des Widgets, mais pour vous lancer sur ce point, vous pouvez vous appuyer sur le tutorial publie sur tutorialzine.com Ce tutorial montre une facon simple de savoir qui est present sur votre site internet et par la meme occasion utiliser PHP, MySQL et Jquery. www.nexen.net | 3/6/10 5:38 AM Petit guide MySQL La base de donnees MySQL possede de nombreuses fonctions qui ne sont pas toujours bien connues. Jl2tho a publie un petit guide de survie MySQL pour le developpeur.
Ce guide comprend un tour general des fonctions principales de MySQL qui sont :
- le demarrage et arret d’un serveur MySQL
- la creation/destruction d’une base MySQL
- l'import/export d’une base MySQL
- la consultation du contenu d’une base MySQL en mode commande
- la configuration d'hibernate pour acceder a une base MySQL
En resume, un petit guide utile a posseder a portee de mains.
- Petit guide de survie MySql pour le developpeur www.lephpfacile.com | 3/5/10 10:16 PM Widget en PHP et MySQL et Jquery Les Widgets permettent d'animer vos sites internet de differentes manieres et surtout de personnaliser votre site web.
Il existe differents langages pour realiser des Widgets, mais pour vous lancer sur ce point, vous pouvez vous appuyer sur le tutorial publie sur tutorialzine.com
Ce tutorial montre une facon simple de savoir qui est present sur votre site internet et par la meme occasion utiliser PHP, MySQL et Jquery.
- Who Is Online : Widget With PHP, MySQL & jQuery www.lephpfacile.com | 3/5/10 10:16 PM Petit guide MySQL La base de données MySQL possède de nombreuses fonctions qui ne sont pas toujours bien connues. Jl2tho a publié un petit guide de survie MySQL pour le développeur.
Ce guide comprend un tour général des fonctions principales de MySQL qui sont :
le démarrage et arrêt d’un serveur MySQL
la création/destruction d’une base MySQL
l’import/export d’une base MySQL
la consultation du contenu d’une base MySQL en mode commande
la configuration d’hibernate pour accéder à une base MySQL
En résumé, un petit guide utile à posséder à portée de mains. www.nexen.net | 3/5/10 12:14 AM Petit guide MySQL La base de données MySQL possède de nombreuses fonctions qui sont pas toujours bien connues. Jl2tho a publié un petit guide de survie MySQL pour le développeur.
Ce guide comprend un tour général des fonctions principales de MySQL qui sont :
le démarrage et arrêt d’un serveur MySQL
la création/destruction d’une base MySQL
l’import/export d’une base MySQL
la consultation du contenu d’une base MySQL en mode commande
la configuration d’hibernate pour accéder à une base MySQL
En résumé, un petit guide utile à posséder à portée de mains. Petit guide de survie MySql pour le développeur (0 visite) www.nexen.net | 3/5/10 12:14 AM Petit guide MySQL La base de donnees MySQL possede de nombreuses fonctions qui sont pas toujours bien connues. Jl2tho a publie un petit guide de survie MySQL pour le developpeur. Ce guide comprend un tour general des fonctions principales de MySQL qui sont : le demarrage et arret d’un serveur MySQL la creation/destruction d’une base MySQL l’import/export d’une base MySQL la consultation du contenu d’une base MySQL en mode commande la configuration d’hibernate pour acceder a une base MySQL En resume, un petit guide utile a posseder a portee de mains. Petit guide de survie MySql pour le developpeur (0 visite) www.nexen.net | 3/5/10 12:14 AM Petit guide MySQL La base de donnees MySQL possede de nombreuses fonctions qui ne sont pas toujours bien connues. Jl2tho a publie un petit guide de survie MySQL pour le developpeur. Ce guide comprend un tour general des fonctions principales de MySQL qui sont : le demarrage et arret d’un serveur MySQL la creation/destruction d’une base MySQL l’import/export d’une base MySQL la consultation du contenu d’une base MySQL en mode commande la configuration d’hibernate pour acceder a une base MySQL En resume, un petit guide utile a posseder a portee de mains. www.nexen.net | 3/5/10 12:14 AM XtraDB sauvegarde votre cache, et ça marche ! La dernière version de XtraDB, le moteur de stockage proposé par Percona, dispose d’une fonctionnalité plutôt pertinente avec MySQL : La sauvegarde du cache InnoDB (InnoDB Buffer Pool)
Sauvegarder le cache, oui, mais pour quoi faire ?
Vous devez effectivement comprendre l’intérêt de la chose si vous vous êtes déjà frotté à l’administration d’un MySQL mais je dois vous avouer qu’en abordant le sujet pendant la pose café, tout le monde n’était pas forcement convaincu.
En effet, la mise en œuvre d’une telle fonctionnalité soulève une autre question : Pourquoi redémarrer MySQL ?
Effectivement, le véritable intérêt de cette sauvegarde est de pouvoir couper son MySQL sans perdre les informations stockées dans le cache. Intérêt évidemment compris de tous dans le cas d’un crash du serveur MySQL.
Dans les faits, XtraDB permet de sauvegarder et restaurer le cache même si il n’y a pas eu d’arrêt de l’instance. Ce qui peut d’ailleurs s’avérer utile dans certaines conditions, après le passage d’un gros batch par exemple, afin de retrouver un cache d’activité transactionnelle standard.
Pour en revenir à la question posée par mon collègue, en dehors du contexte de crash, pourquoi redémarrer MySQL ?
Alors que d’autres éditeurs de bases de données concentrent leurs efforts pour justement limiter au maximum le redémarrage des instances, il semble que MySQL soit plus exposé que les autres à ce type de problématique.
Et effectivement, même si la modification dynamique de paramètres gagne du terrain avec les nouvelles versions, la gestion des fichiers physiques reste problématique dans un environnement de production critique.
Il s’agit donc ici de se poser la question à l’envers et c’est donc pour ces différentes raisons que la sauvegarde du cache de données est pertinente avec MySQL !
Comment ça marche ?
Le pré-requis est évidemment d’installer et d’utiliser le moteur de stockage XtraDB fourni par Percona (lien en fin d’article).
Pour comprendre le fonctionnement de cette sauvegarde, j’ai réalisé un petit test en utilisant le compteur Innodb_buffer_pool_pages_data qui indique combien de pages du cache sont utilisées :
1 – Arrêt et relance de l’instance MySQL (Tous les caches sont vidés)
2 – Je contrôle l’état de mon cache :
mysql> show global status like ‘Innodb_buffer_pool_pages_data’;
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
| Innodb_buffer_pool_pages_data | 14 |
+-------------------------------+-------+
3 – Je fais une requête simple sur ma table ETAT :
mysql> select * from capdata_innodb.ETAT;
4 -Nouvelle vérification du cache, à ce stade, la table ETAT a bien été montée dans le cache (au moins une partie de ses données) :
mysql> show global status like ‘Innodb_buffer_pool_pages_data’;
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
| Innodb_buffer_pool_pages_data | 17 |
+-------------------------------+-------+
5 – Je lance une sauvegarde du cache :
mysql> select * from information_schema.XTRADB_ADMIN_COMMAND /*!XTRA_LRU_DUMP*/;
+------------------------------+
| result_message |
+------------------------------+
| XTRA_LRU_DUMP was succeeded. |
+------------------------------+
6 – Arrêt et relance de l’instance MySQL (Tous les caches sont vidés)
7 – Vérification du cache :
mysql> show global status like ‘Innodb_buffer_pool_pages_data’;
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
| Innodb_buffer_pool_pages_data | 14 |
+-------------------------------+-------+
8 -Restauration du cache :
mysql> select * from information_schema.XTRADB_ADMIN_COMMAND /*!XTRA_LRU_RESTORE*/;
+---------------------------------+
| result_message |
+---------------------------------+
| XTRA_LRU_RESTORE was succeeded. |
+---------------------------------+
9 – Dernière vérification du cache :
mysql> show global status like ‘Innodb_buffer_pool_pages_data’;
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
| Innodb_buffer_pool_pages_data | 17 |
+-------------------------------+-------+
Le cache a bien été restauré, à vous le warm restart facile !
Percona a réalisé un petit benchmark comparatif dont voici le résultat :
Retrouvez toutes les informations sur le moteur XtraDB ici : http://www.percona.com/docs/wiki/percona-xtradb:startAutres articles à découvrir sur le blog :
Principes d’une sauvegarde à chaud (David BAFFALEUF) [SqlServer]
MySQL et les tables temporaires internes (Cédric PEINTRE) [MySQL]
Attention : publication transactionnelle et indexes non clusters (David BAFFALEUF) [SqlServer] blog.capdata.fr | 3/4/10 4:38 PM XtraDB sauvegarde votre cache, et ça marche ! La derniere version de XtraDB, le moteur de stockage propose par Percona, dispose d’une fonctionnalite plutot pertinente avec MySQL : La sauvegarde du cache InnoDB (InnoDB Buffer Pool) Sauvegarder le cache, oui, mais pour quoi faire ? Vous devez effectivement comprendre l’interet de la chose si vous vous etes deja frotte a l’administration d’un MySQL mais je dois vous avouer qu’en abordant le sujet pendant la pose cafe, tout le monde n’etait pas forcement convaincu. En effet, la mise en oeuvre d’une telle fonctionnalite souleve une autre question : Pourquoi redemarrer MySQL ? Effectivement, le veritable interet de cette sauvegarde est de pouvoir couper son MySQL sans perdre les informations stockees dans le cache. Interet evidemment compris de tous dans le cas d’un crash du serveur MySQL. Dans les faits, XtraDB permet de sauvegarder et restaurer le cache meme si il n’y a pas eu d’arret de l’instance. Ce qui peut d’ailleurs s’averer utile dans certaines conditions, apres le passage d’un gros batch par exemple, afin de retrouver un cache d’activite transactionnelle standard. Pour en revenir a la question posee par mon collegue, en dehors du contexte de crash, pourquoi redemarrer MySQL ? Alors que d’autres editeurs de bases de donnees concentrent leurs efforts pour justement limiter au maximum le redemarrage des instances, il semble que MySQL soit plus expose que les autres a ce type de problematique. Et effectivement, meme si la modification dynamique de parametres gagne du terrain avec les nouvelles versions, la gestion des fichiers physiques reste problematique dans un environnement de production critique. Il s’agit donc ici de se poser la question a l’envers et c’est donc pour ces differentes raisons que la sauvegarde du cache de donnees est pertinente avec MySQL ! Comment ca marche ? Le pre-requis est evidemment d’installer et d’utiliser le moteur de stockage XtraDB fourni par Percona (lien en fin d’article). Pour comprendre le fonctionnement de cette sauvegarde, j’ai realise un petit test en utilisant le compteur Innodb_buffer_pool_pages_data qui indique combien de pages du cache sont utilisees : 1 – Arret et relance de l’instance MySQL (Tous les caches sont vides) 2 – Je controle l’etat de mon cache : mysql> show global status like ‘Innodb_buffer_pool_pages_data’; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | Innodb_buffer_pool_pages_data | 14 | +-------------------------------+-------+ 3 – Je fais une requete simple sur ma table ETAT : mysql> select * from capdata_innodb.ETAT; 4 -Nouvelle verification du cache, a ce stade, la table ETAT a bien ete montee dans le cache (au moins une partie de ses donnees) : mysql> show global status like ‘Innodb_buffer_pool_pages_data’; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | Innodb_buffer_pool_pages_data | 17 | +-------------------------------+-------+ 5 – Je lance une sauvegarde du cache : mysql> select * from information_schema.XTRADB_ADMIN_COMMAND /*!XTRA_LRU_DUMP*/; +------------------------------+ | result_message | +------------------------------+ | XTRA_LRU_DUMP was succeeded. | +------------------------------+ 6 – Arret et relance de l’instance MySQL (Tous les caches sont vides) 7 – Verification du cache : mysql> show global status like ‘Innodb_buffer_pool_pages_data’; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | Innodb_buffer_pool_pages_data | 14 | +-------------------------------+-------+ 8 -Restauration du cache : mysql> select * from information_schema.XTRADB_ADMIN_COMMAND /*!XTRA_LRU_RESTORE*/; +---------------------------------+ | result_message | +---------------------------------+ | XTRA_LRU_RESTORE was succeeded. | +---------------------------------+ 9 – Derniere verification du cache : mysql> show global status like ‘Innodb_buffer_pool_pages_data’; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | Innodb_buffer_pool_pages_data | 17 | +-------------------------------+-------+ Le cache a bien ete restaure, a vous le warm restart facile ! Percona a realise un petit benchmark comparatif dont voici le resultat : Retrouvez toutes les informations sur le moteur XtraDB ici : http://www.percona.com/docs/wiki/percona-xtradb:startAutres articles a decouvrir sur le blog : Principes d’une sauvegarde a chaud (David BAFFALEUF) [SqlServer] MySQL et les tables temporaires internes (Cedric PEINTRE) [MySQL] Attention : publication transactionnelle et indexes non clusters (David BAFFALEUF) [SqlServer] blog.capdata.fr | 3/4/10 4:38 PM NOSQL et MongoDB 1.2.4 Les bases de données sont très utilisées dans le web. Les formats disponibles sont très nombreux et variés et certains beaucoup plus utilisés comme MySQL, PostgreSQL... L'ensemble de ces bases de données sont avant tout considérés comme des bases de données relationnelles. L'alternative à ce concept de base de données relationnelles est le NoSQL.
Depuis quelques mois, ce phénomène est redevenu au devant de la scène avec comme axes :
Haute disponibilité des données
Partionnement des données
Et des sites importants ont déjà adoptés le NoSQL comme Google, Amazon, Facebook...
Mais le NoSQL peut être intégrer dans votre site PHP en utilisant le driver MongoDB qui vient de sortir une nouvelle version. MongoDB est une base de données "orientée document" et va stocker des données sous forme de JSON. Le site « la ferme du web » propose une introduction assez détailler de l'approche et de son utilisation. NoSQL - MongoDB et PHP: Première approche (0 visite) MongoDB (0 visite) www.nexen.net | 3/4/10 7:45 AM NOSQL et MongoDB 1.2.4 Les bases de donnees sont tres utilisees dans le web. Les formats disponibles sont tres nombreux et varies et certains beaucoup plus utilises comme MySQL, PostgreSQL... L'ensemble de ces bases de donnees sont avant tout consideres comme des bases de donnees relationnelles. L'alternative a ce concept de base de donnees relationnelles est le NoSQL. Depuis quelques mois, ce phenomene est redevenu au devant de la scene avec comme axes : Haute disponibilite des donnees Partionnement des donnees Et des sites importants ont deja adoptes le NoSQL comme Google, Amazon, Facebook... Mais le NoSQL peut etre integrer dans votre site PHP en utilisant le driver MongoDB qui vient de sortir une nouvelle version. MongoDB est une base de donnees "orientee document" et va stocker des donnees sous forme de JSON. Le site « la ferme du web » propose une introduction assez detailler de l'approche et de son utilisation. NoSQL - MongoDB et PHP: Premiere approche (0 visite) MongoDB (0 visite) www.nexen.net | 3/4/10 7:45 AM Accélérez votre base de données SQL Lorsqu'un site internet est réalisé, de nombreuses manières existent pour accélérer l'affichage des pages webs et surtout envers votre base de données comme MySQL.
Les optimisations sont très diverses, cependant il existe un autre moyen, un peu moins connu. Il s'agit d'une accélération « matériel » et plus précisément par l'intermédiaire des cartes graphiques.
Pour bénéficier de la puissance des cartes graphiques, vous devez passer par CUDA qui est une architecture de traitement parallèle développée par NVIDIA. Cette architecture va vous permettre de décupler les performances de calcul du système en exploitant la puissance des processeurs graphiques.
Kevin Skadron a publié un document qui montre comment CUDA peut exploiter une carte graphique et accélérer une base de données. Cuda (0 visite) Document Accélérez votre base de données SQL (0 visite) www.nexen.net | 2/26/10 7:20 AM Accélérez votre base de données SQL Lorsqu'un site internet est realise, de nombreuses manieres existent pour accelerer l'affichage des pages webs et surtout envers votre base de donnees comme MySQL. Les optimisations sont tres diverses, cependant il existe un autre moyen, un peu moins connu. Il s'agit d'une acceleration « materiel » et plus precisement par l'intermediaire des cartes graphiques. Pour beneficier de la puissance des cartes graphiques, vous devez passer par CUDA qui est une architecture de traitement parallele developpee par NVIDIA. Cette architecture va vous permettre de decupler les performances de calcul du systeme en exploitant la puissance des processeurs graphiques. Kevin Skadron a publie un document qui montre comment CUDA peut exploiter une carte graphique et accelerer une base de donnees. Cuda (0 visite) Document Accelerez votre base de donnees SQL (0 visite) www.nexen.net | 2/26/10 7:20 AM Twitter délaisse MySQL pour une base de données non SQL Avec Cassandra, le site de reseautage souhaite gagner une disponibilite de 100 %. rss.01net.com | 2/25/10 4:22 PM PHPBenelux meeting ce vendredi 19h30 à Leuven Au Café Sport, juste en face de la gare (comme pour les mysql ug meeting et aperophp qui se sont fait à Leuven)
Macq Électronique paye une tournée.
Schedule:
19:30 - 20:00: welcome
20:00 - 20:50: Zend Framework JQuery by Dennis De Cock
20:50 - 21:00: break
21:00 - 21:50: libre. Quelque chose à présenter ? -> info@phpbenelux.eu.
21:50 - 22:00: Raffle and free podium
22:00 - ... : Drinks and networking moosh.et.son.brol.be | 2/23/10 1:00 PM PHPBenelux meeting ce vendredi 19h30 à Leuven Au Cafe Sport, juste en face de la gare (comme pour les mysql ug meeting et aperophp qui se sont fait a Leuven) Macq Electronique paye une tournee. Schedule: 19:30 - 20:00: welcome 20:00 - 20:50: Zend Framework JQuery by Dennis De Cock 20:50 - 21:00: break 21:00 - 21:50: libre. Quelque chose a presenter ? -> info@phpbenelux.eu. 21:50 - 22:00: Raffle and free podium 22:00 - ... : Drinks and networking moosh.et.son.brol.be | 2/23/10 1:00 PM Modifier le prompt du client mysql Quand on doit intervenir sur plusieurs serveurs simultanément (par exemple pour réparer une réplication qui s’est plantée), il est pratique d’avoir une console ouverte sur chaque serveur. Personnellement, j’aime bien utiliser Terminator, qui évite les problèmes de chevauchement de fenêtres quand plusieurs sessions sont ouvertes en parallèle. Seul petit hic : toutes les consoles affichent [...] www.dbnewz.com | 2/23/10 10:20 AM Modifier le prompt du client mysql Quand on doit intervenir sur plusieurs serveurs simultanement (par exemple pour reparer une replication qui s’est plantee), il est pratique d’avoir une console ouverte sur chaque serveur. Personnellement, j’aime bien utiliser Terminator, qui evite les problemes de chevauchement de fenetres quand plusieurs sessions sont ouvertes en parallele. Seul petit hic : toutes les consoles affichent [...] www.dbnewz.com | 2/23/10 10:20 AM PHP Hautes Performances – Coté MySQL avec le site 24h00 Dernièrement je vous ait parlé du site netlog qui sert jusqu’à 5 milliards de pages vues par mois basé sur une architecture LAMP. La particularité de cette application était d’avoir un très fort ratio en lecture / écriture (entre 1.4 et 1) et donc la solution résidait dans la mise en place de sharding sur [...] www.lemug.fr | 2/22/10 9:58 PM PHP Hautes Performances – Coté MySQL avec le site 24h00 Dernierement je vous ait parle du site netlog qui sert jusqu’a 5 milliards de pages vues par mois base sur une architecture LAMP. La particularite de cette application etait d’avoir un tres fort ratio en lecture / ecriture (entre 1.4 et 1) et donc la solution residait dans la mise en place de sharding sur [...] www.lemug.fr | 2/22/10 9:58 PM Sauver vos données MySQL Un logiciel nomme Sypex permet d'automatiser les sauvegardes des bases de donnees MySQL. Le logiciel est ecrit en PHP, l'interface est entierement "ajaxisee" et il est simple a installer. - Logiciels www.toolinux.com | 2/21/10 11:15 PM GNT recrute un développeur internet PHP / MySQL GNT est a la recherche d'un developpeur PHP / MySQL www.generation-nt.com | 2/21/10 7:10 AM Optimisation des requêtes pour des performances optimales (24 Mar 2010) Lors de ce séminaire Web nous vous parlerons des différentes méthodes d'analyse et d'optimisation des requêtes visant à accroître les performances de votre base de données MySQL. Nous nous concentrerons sur l'identification des requêtes problématiques, l'analyse de leur impact et les optimisations possibles.Date and Time: Wednesday, 24 Mar 2010, www.mysql.fr | 2/19/10 6:35 PM Optimisation des requêtes pour des performances optimales (24 Mar 2010) Lors de ce seminaire Web nous vous parlerons des differentes methodes d'analyse et d'optimisation des requetes visant a accroitre les performances de votre base de donnees MySQL. Nous nous concentrerons sur l'identification des requetes problematiques, l'analyse de leur impact et les optimisations possibles.Date and Time: Wednesday, 24 Mar 2010, www.mysql.fr | 2/19/10 6:35 PM Damien Seguy évoque l'industrialisation de PHP Damien Seguy a fonde Nexen.net en 1999, le premier portail PHP et MySQL en francais. Il est le createur de l'elePHPant en peluche. C'est l'invite de la semaine de Jonathan Le Lous sur IntellinTV. - Revue de presse www.toolinux.com | 2/17/10 11:10 PM PHP Hautes Performances – Coté MySQL avec l’exemple de Netlog Rendre une application LAMP performante implique d’optimiser plusieurs éléments. En travaillant sur le sujet entre autres dans le cadre de nos formations PHP Tuning, j’ai été amené à consulter le retour d’expérience de Netlog par l’un de ses responsable Jurriaan Persyn.
Netlog est un réseau social de plus de 60 millions de jeunes en Europe.
Cette présentation [...] www.lemug.fr | 2/16/10 3:07 PM |