WampServer

Apache, PHP, MySQL on Windows 

 
  • Accueil forum
  • Retour à WampServer
  • presentation
  • Download
  • Addons
  • Formations
  • Alter Way

 
Versions bibliothèque MySQL et serveur différentes
Envoyé par: Kyos (---.fbx.proxad.net)
Date: 05 October 2010 à 15:15

Bonjour

Dans la fénêtre de PHPMyAdmin, j'ai le message suivant:
"La version de votre bibliothèque MySQL (5.0.51a) diffère de la version de votre serveur MySQL (5.1.30). Ceci peut occasionner un comportement imprévisible."

C'est grave docteur? Et comment y remédier.

Merci.

PS - J'utilise la version WampServer 2.0

Re: Versions bibliothèque MySQL et serveur différentes
Envoyé par: Otomatic (---.fbx.proxad.net)
Date: 05 October 2010 à 16:06

« La version de votre bibliothèque MySQL (5.0.51a) diffère de la version de votre serveur MySQL (5.1.34). Ceci peut occasionner un comportement imprévisible. »
Avertissement (Warning) qui apparaît avec PHP 5.2.8 ou postérieur et MySQL 5.1.30 ou postérieur dans la fenêtre de PhpMyAdmin.
Avec les évolutions serveur MySQL 5.1.3x, vous risquez également d'avoir le message d'erreur :
"Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist"

C'est du au fait que PHP branche 5.2.9 et plus est resté en version client 5.0.51a alors que MySQL a évolué.

Ça peut être génant, comme ça peut ne pas l'être, mais, si vous gardez la version MySQL 5.1.3x, il sera indispensable d'effectuer la procédure de mise à jour de vos bases de données, en l'occurrence mysql_upgrade.exe. D'ailleurs, cette procédure est à effectuer à chaque évolution de version de MySQL.
(Voir - B -)

- A - Évolution client PHP vers MySQL 5.1.3x ---
Vous pouvez effectuer une « mise à jour » du client mysql PHP en version 5.1.3x en suivant la procédure ci-dessous

Télécharger l'archive contenant les « bonnes » dll d'extension pour PHP branche 5.2.9 et plus ici :

[www.apachelounge.com]

Décompactez l'archive téléchargée dans un dossier temporaire ce qui vous donnera trois fichiers :
php_mysql.dll
php_mysqli.dll
readme.txt

Pour éviter tout problème éventuel et pouvoir revenir en arrière, il est conseillé de :
- Renommer wamp/bin/php/php5.2.x/ext/php_mysql.dll en php_mysql_old.dll
- Renommer wamp/bin/php/php5.2.x/ext/php_mysqli.dll en php_mysqli_old.dll

- Copier php_mysql.dll téléchargée dans wamp/bin/php/php5.2.x/ext/php_mysql.dll
- Copier php_mysqli.dll téléchargée dans wamp/bin/php/php5.2.x/ext/php_mysqli.dll

- Renommer wamp\bin\php\php5.2.x\libmysql.dll en libmysql_old.dll
- Copier wamp\bin\mysql\mysql5.1.3x\bin\libmysql.dll
dans wamp\bin\php\php5.2.x\libmysql.dll

- Renommer wamp\bin\apache\apache2.2.10\bin\libmysql.dll en libmysql_old.dll
- Copier wamp\bin\mysql\mysql5.1.3x\bin\libmysql.dll
dans wamp\bin\apache\apache2.2.10\bin\libmysql.dll

-----------------------------------------------------
- B - mysql_upgrade.exe
- 1 - Dans le dossier contenant vos bases de données, par défaut "wamp\bin\mysql\mysql5.1.3x\data" avez-vous un fichier mysql_upgrade_info ?
Nota : Le dossier contenant vos bases de données correspont au contenu de "datadir=...." du fichier "wamp\bin\mysql\mysql5.1.3x\my.ini"
- 2 - Contient-il "5.1.3x" ? (Numéro de la version MySQL utilisée)

Si vous répondez NON à 1 ou NON à 2, vous avez de grands risques de voir survenir l'erreur : "Table 'mysql.servers' doesn't exist" et, éventuellement d'autres erreurs car il n'y a pas eu de vérification de la concordances de vos bases de données avec la nouvelle version de MySQL.

Remarque : La table mysql.servers n'est utilisée que par les moteurs de base de données de type FEDERATED, mais, avec certaines instructions SQL, elle est vérifiée et l'erreur survient si elle n'existe pas. Cette table n'est pas installée lors de mises à jour parce que l'installateur ne peut pas faire tout ce qui est requis car il n'est pas « client » et il ne peut pas accéder aux bases de données mais uniquement aux fichiers du système.

C'est pourquoi il est fourni le programme mysql_upgrade.exe qui permet de modifier les tables qui nécessitent des modifications après une mise à jour ou une évolution de MySQL.

Ce progamme DOIT être exécuté après chaque mise à jour ou évolution de version de MySQL.

--- Effectuer mysql_upgrade.exe ---
Pour les utilisateurs de Windows, non aficionado de la ligne de commande, voici la procédure à effectuer.
Sauvegarder les bases de données existantes (mieux vaut prévenir que guérir !). Le dossier contenant vos bases de données correspont au contenu de "datadir=...." du fichier "wamp\bin\mysql\mysql5.1.3x\my.ini", sauf le dossier mysql qui contient les tables propres à MySQL.

Tout d'abord, il faut lancer le serveur MySql, donc lancer Wampserver
Ensuite, lancer une fenêtre de commande par démarrer, exécuter et taper
%SystemRoot%\system32\cmd.exe

Se placer dans le dossier bin de mysql 5.1.3x soit, pour wamp :
wamp\bin\mysql\mysql5.1.3x\bin

Arrivé la il faut savoir si vous avez ou non mis un mot de passe à root@localhost

si mot de passe, taper
mysql_upgrade.exe --user=root --host=localhost --password=mot_de_passe

si pas de mot de passe, taper
mysql_upgrade.exe --user=root --host=localhost --password=

et attendre la fin de la procédure

---------------------------------------------------------------
Documentation Apache - Documentation PHP - Documentation MySQL - Wampserver install files & addons

Re: Versions bibliothèque MySQL et serveur différentes
Envoyé par: bagu (---.bagu.biz)
Date: 05 October 2010 à 16:59

A savoir que, par retour d'expérience, après cette manipulation, PDO ne semble plus fonctionnel (en utilisant php 5.2.14 en tout cas)

Aller à : Liste des Forums•Liste des messages•Recherche•Connexion
Désolé, seuls les utilisateurs connectés peuvent envoyer des messages dans ce forum.
Cliquer ici pour se connecter

design by jidePowered by Alter Way get firefoxget PHP