Conflit entre MySQLd 5.5.8 et libnss-mysql 1.5

Vous souhaitez échanger un avis qui ne concerne pas nos services ou simplement converser sur un sujet qui vous tiens à cœur ? Vous avez la parole !
Franceserv
Messages : 905
Inscription : 2 avril 2010 à 20:14

Bonjour,

J'utilise MySQLd 5.1.48 (janvier 2010) et libnss-mysql 1.5 (2005) depuis un peu plus d'un an et tout fonctionne à merveille. J'ai d'ailleurs déjà mis à jour au moins deux versions de MySQLd sans aucun problème. Mes utilisateurs virtuels qui sont dans une table SQL sous MySQLd sont reconnus en tant qu'utilisateurs de mon système sous linux Slackware 64bits.

Cependant, lorsque je compile le dernier MySQLd 5.5.8 (décembre 2010), libnss-mysql s'affole et bloque le démarrage de MySQLd ainsi que des commandes systèmes comme cmake ou toutes nouvelles connexions SSH.

Je ne trouve aucune erreur du service SSHd mais MySQLd donne ceci :
Inconsistency detected by ld.so: dl-open.c: 612: _dl_open: Assertion`_dl_debug_initialize (0, args.nsid)->r_state == RT_CONSISTENT' failed!
En fait je pense que les fichiers de MySQLd 5.5.8 bloquent libnss-mysql et ce dernier bloque tous les utilisateurs systèmes.

1) Lorsque je désactive libnss-mysql (je retire "mysql" du fichier /etc/nsswitch.conf), mon système redevient normal, MySQL démarre, les nouvelles connexions SSH sont ok, etc ...

2) Lorsque je réactive libnss-mysql et que je remet MySQLd 5.1.48 (en l'extrayant d'une archive TAR) et sans même avoir à démarrer MySQLd, le système redevient normal également.

J'ai tentez évidement de recompiler libnss-mysql lorsque MySQLd 5.5.8 est en place mais c'est pareil. J'ai également fait un ldconfig pour recharger les lib ainsi qu'un sshd restart mais rien n'y fait.

libnss-mysql est prévu pour fournir sa liste d'utilisateurs virtuels s'il la trouve et lorsque MySQLd n'est pas lancé, il ne donne rien mais en aucun cas il doit faire planter le système.

Voici deux sujets de discussion sur ce même problème :
http://forums.mysql.com/read.php?117,399966,399966
http://bugs.mysql.com/bug.php?id=59074& ... &notify=67

Actuellement, je ne peut plus mettre à jour le serveur MySQLd sans perdre libnss-mysql et sans lui il n'y a plus aucun utilisateurs virtuels et donc plus de suPHP.

Voici le configure de mon MySQLd :

Code : Tout sélectionner

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysqld -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/home/mysqld -DINSTALL_INFODIR=/usr/info -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc
Et voici le configure très simple de mon libnss-mysql :

Code : Tout sélectionner

./configure --prefix=/usr/local/libnss-mysql --with-mysql=/usr/local/mysqld
A) Où faut t-il que je cherche pour résoudre ce problème ou avez vous la solution ?
B) Existe t-il une solution équivalente à libnss-mysql mais plus récente que 2005 ?

Merci d'avance.
Franceserv
Messages : 905
Inscription : 2 avril 2010 à 20:14

Je vais très prochainement changer le serveur mais je vais le faire en douceur pour que ca soit invisible pour vous.

Je vais utiliser Proxmox avec Debian pour installer des hôtes virtuels et pouvoir séparer mes services. Ainsi, le service MySQL sera séparé et fonctionnera indépendamment du service Web.

De plus ca me permet de pouvoir effectuer des sauvegardes complètes des différents hôtes virtuels et de les déplacer sur un autre serveur physique sans avoir à réinstaller quoi que ce soit. C'est très rapide pour moi et c'est beaucoup plus rassurant. Si par exemple actuellement le serveur venait à ne plus fonctionné, il me fraudai une petite semaine pour tout réinstaller alors que avec la virtualisation, en moins de 2 heures les services seraient de nouveau fonctionnels.

De plus, je vais m'orienter vers Debian qui est bien plus fournis que Slackware au niveau package et plus souple dans certaines utilisations. Ça résoudrai en même temps le problème de la mise à jour MySQLd et de GhostScript.

La virtualisation ressemble comme dans le bâtiment à poser des cloisons dans sa maison comme on souhaites et si on a besoins de changer la taille du disque dur virtuel, c'est pris en compte en moins d'une millième de seconde. J'ai déjà fais des essais chez moi et c'est très surprenant. J'avais par exemple x Go de RAM, après avoir modifié la RAM de ce hôte virtuel via une interface web d'administration fournie avec ce système Proxmox, la RAM avait changé sans même avoir à redémarrer l'hôte.

Et enfin ça me permettrai de copier/modifier/supprimer/ajouter des serveurs virtuels très facilement et d'effectuer des essais et avancer beaucoup plus facilement au niveau de mes recherches et développement sans toucher à ce qui est en production.

Je vais donc dans la soirée ou dans quelques jours acheter ce nouveau serveur et commencer à le préparer pour recevoir les services actuels pour qu'à la fin du mois, tout soit prêt.
Répondre