Displaying posts with tag: MySQL (reset)
MariaDB 5.2.4 et 5.1.53 sont disponibles

The MariaDB community is happy to announce two new releases hot off
the compiler!

MariaDB is a branch of the MySQL database which includes all major
open source storage engines, myriad bug fixes, and many community
patches.

The MariaDB 5.1 release continues with MariaDB 5.1.53, while the 5.2
series moves to 5.2.4. As always, detailed release notes are available
and are highly recommended, especially for those considering an
upgrade.

http://kb.askmonty.org/v/mariadb-5153-release-notes

http://kb.askmonty.org/v/mariadb-524-release-notes

These releases both address a couple of issues in both series that may
affect a large number of users. First, a regression in MySQL relating
to starting …

[Lire plus]
Pour ou contre les procédures et fonctions stockées ?

Faut-il oui ou non utiliser des procédures ou fonctions stockées avec MySQL ? Le question a souvent été soulevée et donne lieu à chaque fois à de vifs échanges entre pro et anti. Cet article vous propose une approche différente : se focaliser sur quelques points particuliers (sécurité, performance, débogage) et donner les avantages et inconvénients de l’utilisation des routines stockées. Avec ces éléments en main, vous pourrez décider par vous-même si les routines stockées sont pertinentes pour votre application.

Sécurité

Un des points clés cités par les partisans des routines stockées est la sécurité accrue : en effet, on peut contrôler les droits donnés aux utilisateurs plus finement et de manière plus flexible qu’avec le système de droits classiques via les commandes GRANT. Il suffit pour cela, au moment de la déclaration de la routine, d’ajouter la clause SQL SECURITY …

[Lire plus]
30 questions sur MySQL – Réponses de la partie 2

Voici les réponses de la 2è partie de notre quiz. Là encore, des commentaires expliquent rapidement les réponses.

16- a : Le nom d’hôte n’étant pas spécifié, ce sera donc localhost. Et pour MySQL, cela indique que le client cherche à se connecter à travers une socket : le numéro de port est ignoré. Pour que le port soit pris en compte, il faut ajouter soit -h=127.0.0.1 soit –protocol=tcp

17- b : Conséquence : quand MySQL a besoin de créer une table temporaire de manière interne (pour un tri par exemple) et que la table contient un champ TEXT ou dérivé, elle est automatiquement créée sur disque et risque de poser des problèmes de performance

18- b : Et malheureusement, la taille du tablespace ne diminue pas !

19- a : Seuls les index des tables MyISAM peuvent être mis en cache par le serveur, les données ne peuvent l’être que par l’OS, ce qui est beaucoup moins efficace

[Lire plus]
30 questions sur MySQL – Partie 2

Après notre petit échauffement avec les 15 premières questions du quiz, voici la tant attendue deuxième partie ! Bon courage et à bientôt pour la deuxième série de réponses !

16- Sur un serveur Linux, deux instances de MySQL sont installées, l’une sur le port 3306 et l’autre sur le port 3307. Avec la commande mysql -uroot -p -P3307, sur quelle instance se connecte-t-on ?

  1. a) L’instance écoutant sur le port 3306
  1. b) L’instance écoutant sur le port 3307

17- Pour une table MEMORY, quelle est l’affirmation suivante qui est vraie ?

  1. a) Les tables ne peuvent pas contenir plus d’un million de lignes
  1. b) Les colonnes de type TEXT et dérivées ne sont pas autorisées
  1. c) Les données ne peuvent pas être répliquées vers un serveur esclave

18- L’option innodb_file_per_table étant …

[Lire plus]
30 questions sur MySQL – Réponses de la partie 1

Et voici comme promis les réponses de la 1ère partie du quiz. Dans la mesure du possible, j’ai ajouté quelques petits commentaires pour expliquer le pourquoi du comment.

1- b : Toutes les ressources doivent etre étanches entre les instances

2- a : MyISAM garde dans ses méta-données le nombre de lignes de la table

3- b : InnoDB remplit d’abord le 1er fichier, puis le 2nd, on ne peut pas parler de distribution des écritures

4- c : Certains changements de droits n’affectent pas les sessions déjà ouvertes

5- a : Le tablespace principal contient des informations indispensables au bon fonctionnnement d’InnoDB, meme avec innodb_file_per_table

6- c : La réplication ne constitue pas une sauvegarde

7- a : Depuis MySQL 5.1 et la fonctionnalité de plugins, les versions d’InnoDB …

[Lire plus]
C’est dans les vieux pots… ?

J’ai eu récemment à intervenir sur un de nos serveurs MySQL en production. L’une de nos équipes m’a remonté le fait que la commande SELECT n’affichait pas plus de 1000 enregistrements sur certaines des tables de la base !

J’ai instinctivement pensé à un problème de corruptions de tables, j’ai donc lancé un SHOW TABLE STATUS… et j’ai eu la réponse suivant:

mysql> SHOW TABLE STATUS;
ERROR 1064: You have an error in your SQL syntax near 'TABLE STATUS' at line 1

Même réponse avec un SHOW CREATE TABLE…

En fait la raison de cette erreur 1064 est la suivante:

MySQL 3.22.32, commande status dans le client texte

Version du serveur MySQL 3.22.32 !

Je ne vous raconte pas l’émotion L’uptime était de près de 400 jours et le …

[Lire plus]
SkySQL dévoile une alternative de logiciels, services et assistance pour MySQL®

Communiqué de Presse retransmis intégralement. Lien vers un avis du MUG sur la question. HELSINKI, Finlande – le 20 octobre 2010 – SkySQL Ab est une alternative de logiciels, services et assistance pour la base de données MySQL. L’entreprise qui annonce la sortie de SkySQL™ Enterprise, a été fondée par d’anciens cadres, personnels et investisseurs [...]

30 questions sur MySQL – Partie 1

La rentrée est passée depuis quelques semaines, et dbnewz vous propose un petit quiz pour faire le point sur vos connaissances en MySQL. Ce quiz en 2 parties contient un total de 30 questions qui abordent les principaux domaines de notre base de données favorite : réplication, sauvegarde, performance des requêtes, installation, moteurs de stockage, outils…
Tous les documents sont bien sûr autorisés !
A vos marques, prêts ? Partez …

1- Quand on installe deux instances de MySQL sur la même machine hôte, les deux instances ne peuvent pas partager le même port, mais peuvent partager la même socket.

  1. a) Vrai
  1. b) Faux

2- Quelle est la requête dont l’exécution est immédiate, la table t utilisant le moteur MyISAM et id étant la clé primaire ?

  1. a) SELECT COUNT(*) FROM t
  1. b) SELECT COUNT(*) FROM t WHERE id > 5
[Lire plus]
SkySQL : une offre de services sur MySQL

Une offre de services liée à MySQL est annoncée ce jour par la société SkySQL. C’est une aubaine potentielle pour les utilisateurs professionnels de MySQL car ils ne seront plus contraints et forcés d’acheter du service chez Oracle, ils auront la possibilité, entre autres, de passer par SkySQL. Qu’est ce que SkySQL ? D’après nos [...]

Outils d’analyse de requêtes lentes – mk-query-digest

Et voici notre troisième et dernière partie consacrée aux outils d’analyse de requêtes lentes. Aujourd’hui, après le très simple mysqldumpslow et le configurable mysqlsla, nous allons examiner mk-query-digest, un des scripts Perl faisant partie de la suite Maatkit.

mk-query-digest permet d’analyser de nombreux types de journaux et présente un rapport qu’on peut configurer de multiples manières. Contrairement à mysqlsla qui ne sait lire que des fichiers journaux, mk-query-digest offre la possibilité d’analyser d’autres sources de requêtes, par exemple des paquets issus de tcpdump. Un autre point fort de cet outil est le nombre d’options disponibles, qui permettent de filtrer ou classer les entrées analysées de manière à obtenir exactement le rapport que chacun souhaite.

Comme toujours, notre propos va commencer par …

[Lire plus]