2010-03-01 21 views

risposta

22

Il messaggio indica che:

  • Si utilizza versione 5.1.43 del server MySQL
  • Ma che la biblioteca che viene utilizzata da PHP per comunicare con il server è stato compilato per comunicare con una versione 5.0.x di MySQL.

In teoria, questo non dovrebbe causare alcun problema reale: versioni minori tendono ad essere compatibili; ma potrebbe essere necessario aggiornare la libreria utilizzata da PHP; magari un po 'pacchetto come "libmysql", o qualcosa del genere (Non ho una macchina Debian)


Se si vuole fare questo avvertimento scomparire (anche se io non sono sicuro che potrebbe davvero causare alcun grosso problema), dovrete aggiornare il componente PHP che viene utilizzato per comunicare con MySQL.
Nota: Con le dipendenze, potrebbe non essere così facile, in realtà, per aggiornare un solo pacchetto ...

direi che dovreste aggiornare qualcosa di simile php5-mysql; il che significa:

apt-get install php5-mysql 

(Secondo this page - tra gli altri - per aggiornare un unico pacchetto, il vostro deve usare install)

Se si utilizza aptitude, e non apt-get .. Non sono sicuro circa l'opzione giusta che dovresti usare per aggiornare solo un pacchetto; ancora, aptitude safe-upgrade dovrebbe presentare con una lista di pacchetti sarà aggiornamento, che vi permetterà di decidere se o non si desidera continuare ...


Ma hai detto in un commento ad un'altra risposta che Debian navi da parte predefinito con MySQL 5.0 - il che significa che il modulo "ufficiale" per PHP è probabilmente compilato su libmysql 5.0 e non su libmysql 5.1.

Per risolvere questo problema, si dovrà o:

  • Trova un repository che fornisce PHP (o, almeno, l'estensione mysql) compilato contro libmysql 5.1
  • O re -compile PHP e/o l'estensione mysql contro la versione di libmysql che è attualmente in uso sul proprio sistema - cioè libmysql 5.1
+0

Poiché la risposta sopra è la migliore, aggiungerò qui. Il pacchetto del problema è libmysqlclient15off che è un holdover derivante dall'aggiornamento da una versione precedente. Pochi dei vecchi pacchetti non sono stati aggiornati o sono stati abbandonati lasciandolo in giro su alcuni host. Nel mio caso, una vecchia installazione mydns dipendeva ancora dalla versione precedente. – Ryaner

1

Provare a eseguire sudo apt-get update mysql-client.

+0

Non penso che funzionerebbe. Il mio mysql-client (in esecuzione dalla console) è aggiornato, stavo chiedendo del modulo MySQL per PHP. Il problema deriva dal fatto che Debian 5 viene fornito con MySQL 5.0 per impostazione predefinita e questa è la versione della libreria MySQL inclusa in PHP 5. – pako

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

In base a 'man':" l'aggiornamento viene utilizzato per risincronizzare i file di indice del pacchetto dalle loro origini ", non aggiornare un singolo pacchetto. – middus

+0

parola chiave di aggiornamento? – PeanutPower

+0

se si specifica l'installazione, apt-get aggiornerà il pacchetto e le dipendenze che non soddisfano i requisiti della versione –

0

In Debian/Ubuntu si può superare la notifica utilizzando il seguente comando nell'ultima repository definito /etc/apt/sources.list.

sudo apt-get upgrade mysql-client 

Ciò risolverà perfettamente il problema.

Buona giornata.

Problemi correlati