News MYSQL

Lors de la mise en place d'une réplication, il faut modifier son application PHP pour diriger les lectures sur les esclaves et les écritures sur le maître. On y arrive souvent en passant par une couche intermédiaire qui fait la distribution. Avec MySQL Proxy, cette couche peut se faire de manière transparante pour l'application.

Un script LUA sur MySQL Proxy va distribuer correctement les transactions et écritures vers le maître, et les autres requêtes vers les esclaves. MySQL Proxy est aussi capable de surveiller tout un pool d'esclaves, et de répartir les requêtes sur les esclaves qui fonctionnent (par opposition à ceux qui sont inaccessibles).

- MySQL Proxy learns R/W Splitting
- Tutoriel MySQL Proxy RW splitting
le 30/07/2007 à 20:07
MySQL Explain devient graphique
Si vous avez déjà souhaité que le résultat de la commande MySQL EXPLAIN soit publié sous forme d'arbre et non pas de tableau, alors vous serez comblé par le dernier outil de Baron Schwartz.

MySQL Visual Explain transforme la table de résultat de EXPLAIN en une vue hiérarchisée du plan d'exécution de la requête. Le résultat est significativement plus facile à comprendre, notamment dans le cas des index qui s'enchaînent.

MySQL Visual Explain fait partie du MySQL ToolKit de Baron Schwartz, où vous trouverez une myriade d'utilitaires pratiques.

- Introducing MySQL Visual Explain
- MySQL Toolkit
le 13/07/2007 à 20:31
MySQL et Oracle
Les nouvelles offres de MySQL vont de nouveaux bouleverser le marché et les habitudes. Mysql AB l'a annoncé à San Franscisco en Californie avec une série d'orientation de leur projet du meme nom (mySQL). Ils vont montrer dans 1 mois, les nombreux points et orientations pour les utilisateurs des bases de données Oracle, l'utilisation en simultané des 2 bases de données.

- MySQL Offers Free DBA
- DBA Boot Camp: MySQL for the Oracle DBA
Après quelques séminaires Web sur les performances, et plusieurs questions récurrentes, Jay Pipes publie une petite FAQ qui répond à des interrogations classiques :

- MyISAM ou InnoDB ?
- in () ou bien une collection de OR ?
- CHAR ou VARCHAR ?
- VARCHAR(80) ou VARCHAR(255) ?

- Common Questions and Answers from Performance Tuning Webinars
le 13/07/2007 à 20:28
Introduction au proxy MySQL
Le lancement de MySQL Proxy a causé toute une commotion dans la communauté. Et avec raison. Pour les affamés de fonctionnalités, c'est certainement la meilleure des additions récentes aux outils MySQL.

Et si cette dernière affirmation vous laisse sur place, c'est parceque vous n'avez pas encore vu la valeur ajouté du proxy. Ne vous inquiétez pas. Cet article va vous donner un aperçu de la puissance du Proxy.

- MySQL Proxy sur forge
- Getting Started with MySQL Proxy
- Building MySQL Proxy on Mac OS X
- Your first macros with MySQL Proxy
le 12/07/2007 à 20:24
Sauvegarde de MySQL sans interruption
Note de l'auteur :

"Cet article décrit comment réaliser une sauvegarde de MySQL sans interrompre le serveur principal. Normalement, lorsque vous avez besoin d'une sauvegarde, vous devez stopper le serveur, ou placer un verrou en lecture sur la totalité du serveur afin d'avoir un jeu de données cohérent.
Pour obtenir des sauvegardes cohérentes sans interrompre le service, j'utilise une astuce : je réplique ma base de données sur un serveur secondaire, et j'utilise cet esclave pour réaliser les sauvegardes."

La réplication est particulièrement utile pour conserver une copie des données le plus à jour possible sur un serveur secondaire, que ce soit pour la reprise sur catastrophe ou pour la sauvegarde.

- How To Back Up MySQL Databases Without Interrupting MySQL
MySQL 5.1.20, la dernière version du système de base de données Open Source, a été publiée. C'est une version bêta, qu'il est recommandé de tester avant de mettre en production.

Modifications incompatibles avec les versions précédentes :
- Modification incompatible : il n'est plus possible de partitionner les tables de log.
- Les variables utilisateurs et les variables de procédures stockées sont utilisables avec les expressions XPath.
- Le code source du serveur NDB simplifie le support de la compilation pour SCI.
- Les variables système auto_increment_increment et auto_increment_offset sont supportées par les tables NDB.
- Le client d'administration du cluster stocke l'historique de session entre les sessions.
- ndb_error_reporter conserve les timestamp dans les fichiers.
- Ajout du paramètre de configuration TimeBetweenWatchdogCheckInitial.
- Le paramètre MaxAllocate configure l'unité maximale d'allocation pour une table NDB.
- CHECK TABLE indique quelle table d'un groupe MERGE est en berne.

127 bogues ont été corrigés, et notamment :
- Correction de sécurité : CREATE TABLE LIKE ignorait les droits de création de table!
- Correction incompatible : certains code d'erreur de MySQL 5.1 n'étaient pas identiques à ceux de MySQL 5.0
- Correction incompatible : l'utilisation de ORDER BY ou DISTINCT dans une requête avec GROUP_CONCAT entraînait un nouvel affichage des requêtes précédentes.

- MySQL 5.1.20
- Rapports d'erreurs et corrections
- Téléchargement MySQL 5.1
- MySQL
Note de l'auteur :

Un rappel : le mardi, 10 juillet 2007, je vous propose une conférence Sécurité pour MySQL.

La sécurité des bases de données est une condition critique à leur exploitation. Effacement, falsification ou simplement divulgation sont les menaces les plus sérieuses qui rôdent et attendent le premier faux-pas des administrateurs. Il est primordial de bien connaître les aspects sécurité de MySQL, et de faire des choix éclairés parmi les protections natives.

L'inscription est gratuite, et nous aurons une heure de présentation pour bien cerner les enjeux et les solutions de sécurité autour de la base de données et dans un contexte Web.

La conférence est en français.

- Les procédures de sécurité pour MySQL
Que ce passe-t-il lorsqu'un rapport de bogue est soumis à MySQL ? Qui s'occupe de votre bogue ? Pourquoi est-ce que cela prend autant de temps ?

Si vous vous êtes déjà posé la question, ou bien d'autres, alors il est temps de lire l'article de Guiseppe Maxia pour en savoir plus sur les rouages internes de la compagnie.

- MySQL bugs processing explained
- MySQL bugs
le 02/07/2007 à 19:44
Évolutivité des compteurs de page
Les compteurs de page ont un gros défaut : ils convertissent une lecture en écriture. En effet,
à chaque sollicitation de la page, il faut maintenant noter la lecture, et peut être calculer le nombre de lectures totales. Tous les systèmes qui ont alors accélérés leur affichage avec un cache sont maintenant enchaînés à un boulet.

Peter Zaitsev et Brian Aker vous propose une solution : un fichier de log. Cette approche abandonne l'immédiateté des mises à jour des compteurs. Les lectures sont enregistrés dans une table séparée, ou un fichier de log. Les ajouts de données sont atomiques, et peuvent même se passer de connexion à la base.

Puis, périodiquement, le fichier de log est relu, puis appliqué aux compteurs dans la base. Cela permet de réduire le nombre de modifications dans les tables, et avec un délai de modification court, les compteurs peuvent être aussi vieux que 5 minutes.

A noter enfin le dernier truc : au lieu de faire une mise à jour par compteur, vous pouvez regrouper tous les compteurs qui besoin d'une même mise à jour (5 lectures dans les 5 dernières minutes), pour les mettre tous à jour dans le même temps. Moins de requêtes == plus de vitesse.

- Implementing efficient counters with MySQL
- Page Counters, A different approach...
LoadingChargement en cours