2010-03-01 5 views

Répondre

22

Le message indique que:

  • Vous utilisez la version 5.1.43 du serveur MySQL
  • Mais que la bibliothèque qui est utilisé par PHP pour communiquer avec le serveur a été compilé pour communiquer avec une version 5.0.x de MySQL.

En théorie, cela ne devrait pas poser de problème réel: les versions mineures ont tendance à être compatibles; mais vous devrez peut-être mettre à jour la bibliothèque utilisée par PHP; peut-être un paquet comme « libmysql », ou quelque chose comme ça (je n'ai pas une machine Debian)


Si vous voulez faire disparaître cet avertissement (même si je ne suis pas sûr qu'il pourrait vraiment cause tout gros problème), vous devrez mettre à jour le composant PHP qui est utilisé pour communiquer avec MySQL.
Note: Avec les dépendances, il pourrait ne pas être aussi simple que cela, en fait, mettre à niveau seulement un paquet ...

Je dirais que vous auriez à mettre à jour quelque chose comme php5-mysql; ce qui signifie:

apt-get install php5-mysql 

(Selon this page - entre autres - pour mettre à jour un seul paquet, votre doit utiliser install)

Si vous utilisez aptitude, et non apt-get .. Vous n'êtes pas sûr de la bonne option à utiliser pour mettre à jour un seul paquet; encore, aptitude safe-upgrade devrait vous présenter une liste de paquets rénovera, ce qui vous permettra de décider si vous souhaitez continuer ...


Mais vous avez dit ou non dans un commentaire à une autre réponse que les navires Debian par par défaut avec MySQL 5.0 - ce qui signifie que le module "officiel" pour PHP est probablement compilé sur libmysql 5.0, et non sur libmysql 5.1.

Pour résoudre ce problème, vous devez soit:

  • Trouver un référentiel qui fournit PHP (ou, au moins, l'extension mysql) compilé contre libmysql 5.1
  • Ou re -compile PHP et/ou l'extension mysql par rapport à la version de libmysql actuellement utilisée sur votre système - ie libmysql 5.1
+0

Puisque la réponse ci-dessus est la meilleure, je vais ajouter ici. Le paquet de problème est libmysqlclient15off qui est un holdover de la mise à niveau d'une ancienne version. Quelques-uns des anciens paquets n'ont pas été mis à niveau ou ont été abandonnés, laissant certains sur certains hôtes. Dans mon cas, une ancienne installation de mydns dépendait toujours de l'ancienne version. – Ryaner

1

Essayez d'exécuter sudo apt-get update mysql-client.

+0

Je ne pense pas que cela fonctionnerait. Mon client mysql (fonctionnant à partir de la console) est à jour, je demandais sur le module MySQL pour PHP. Le problème vient du fait que Debian 5 est livré avec MySQL 5.0 par défaut, et c'est la version de la bibliothèque MySQL incluse avec PHP 5. – pako

-2
sudo apt-get update php5-mysql 
+4

Selon 'man':" update est utilisé pour resynchroniser les fichiers d'index de paquets de leurs sources ", ne pas mettre à jour un seul paquet. – middus

+0

mettre à jour le mot-clé? – PeanutPower

+0

si vous spécifiez l'installation, apt-get mettra à jour le package et les dépendances qui ne répondent pas aux exigences de version –

0

Dans Debian/Ubuntu vous pouvez surmonter cette notification en utilisant la commande suivante dans le dernier référentiel défini dans /etc/apt/sources.list.

sudo apt-get upgrade mysql-client 

Cela résoudra parfaitement votre problème.

Passez une bonne journée.

Questions connexes