3oct/110

ERROR 1577 (HY000) at line 1: Cannot proceed because system tables used by Event Scheduler were found damaged at server start

mysql

Nous continuons dans la série des erreurs MySQL consécutive à une migration de serveur.

Cette erreur m’est apparue lors de la même migration que l’article précédent, sous debian squeeze la version 5.1 de MySQL s’installe par défaut même si vous demandez la version 5.0, donc sur le coup je n’avais pas fait attention. Cette erreur n’est en fait simplement causé par la migration de la version 5.0 vers la 5.1 même si l’import a été fait via un import masse de fichiers sql en shell.

Voilà comment résoudre le problème :

mysql_upgrade -u root -h localhost -p –verbose –force

ou tout autre utilisateur qui a tous les privilèges (remplacer root par l’utilisateur)

Il ne reste plus qu’à redémarrer MySQL

/etc/init.d/mysql restart

Et l’erreur […]

Lire la suite ...     Commentaire (0)

30sept/112

ERROR 1045 (28000): Access denied for user ‘debian-sys-maint’@’localhost’ (using password: YES)

mysql

Lors d’un changement de serveur de base de données MySQL et l’import brut de la table ‘mysql’ pour avoir les mêmes privilèges. Le problème qui survient est que l’utilisateur ‘debian-sys-maint’ n’as pas le bon mot de passe.

Voilà comment résoudre le problème :
– récupérer le mot de passe du serveur :

vim /etc/mysql/debian.cnf

(ou tout autre éditeur) et copier le password dans la section [client]

- se connecter sur MySQL en shell :

mysql

UPDATE `mysql`.`user` SET password=PASSWORD(‘lemotdepasse’) WHERE `user`="debian-sys-maint";

- Il ne reste plus qu’à redémarrer MySQL

/etc/init.d/mysql restart

Lire la suite ...     Commentaire (2)

7avr/110

Optimisation de MySQL, le script

mysql

Même si l’architecture de la base, les indexations des bons champs sont des paramètres essentiels, une base performante passe aussi par l’optimisation de MySQL en fonction de son utilisation. Les paramètres de MySQL par défaut ne correspondent sans doute pas à vos besoins, mais c’est très compliqué de trouver les bons réglages.

C’est là qu’intervient le script « MySQL Performance Tuning Primer Script » qui vous suggère les bons paramétrés, plus l’up-time est important est plus les suggestions seront pertinentes. Bien sûr cela ne vaut pas les préconisations d’un bon DBA mais celles-ci sont de qualités correctes.

Les points pris en compte sont :

Slow Query Log
Max Connections
Worker Threads
Key Buffer
Query Cache
Sort Buffer
Joins
Temp Tables
Table (Open & Definition) Cache
Table Locking
Table Scans (read_buffer)
Innodb Status

Pour l’utiliser il suffit de lui donner les droits d’exécution, de l’exécuter en root, cela prends quelques secondes :

Et il ne reste plus qu’à appliquer les préconisations dans le fichier my.cnf, puis de redémarrer MySQL.

Lire la suite ...     Commentaire (0)

21mar/110

Les bases de MySQL

mysql

Lors de la création d’une base de données il est toujours bon d’avoir en mémoire les différents types de colonnes MySQL. (M décrit la taille maximale d’affichage du champ, D est mis pour décimal, UNSIGNED permet d’optimiser le stockage de chiffres positifs, ZEROFILL remplit les chiffres de zéros).

Type
Nb Octets
Commentaires

TINYINT[(M)] [UNSIGNED] [ZEROFILL]
1
Très petit entier. Va de -128 à 127, de 0 à 255 si non signé

SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
2
Petit entier. Va de -32 768 à 32 767, de 0 à 65 535 si non signé

MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
3
Entier moyen. Va de -8 388 608 à 8 388 607, de 0 à 16 777 215 si non signé

INT[(M)] [UNSIGNED] [ZEROFILL]
4
Va de -2 147 483 648 à 2 147 483 647, de 0 à 4 294 967 295 si non signé

INTEGER[(M)] [UNSIGNED] [ZEROFILL]
4
Synonyme de INT

BIGINT[(M)] [UNSIGNED] [ZEROFILL]
8
Grand entier. Va de -9 223 372 036 854 775 808 à 9 223 372 036 854 775 […]

Lire la suite ...     Commentaire (0)