Patrick Posté 2 Octobre 2008 Partager Posté 2 Octobre 2008 Coucou, j'aurai besoin de récupérer la version de MySQL de mon serveur à partir d'un script en PHP pour faire un test de compatibilité. J'essaie le code ci-dessous mais la variable $version[0] est systématiquement vide ($version est un tableau) ! preg_match('/[0-9]\.[0-9]+\.[0-9]+/', shell_exec('mysql -V'), $version); Si vous avez une idée je suis preneur Merci ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 2 Octobre 2008 Partager Posté 2 Octobre 2008 Que te renvoie shell_exec('mysql -V') ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick Posté 2 Octobre 2008 Auteur Partager Posté 2 Octobre 2008 Arf judicieux ! ben rien justement, nada, que du vide ! Une idée ? ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
KaRaK Posté 2 Octobre 2008 Partager Posté 2 Octobre 2008 Hello Si tu peux lancer une requête en php : SELECT VERSION(); (apparemment tu ne peux pas, mais au cas où ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick Posté 2 Octobre 2008 Auteur Partager Posté 2 Octobre 2008 Apparemment j'ai pas les droits pour lancer une requête shell. Sur mon dédié c'est un comble Bon je vais devoir faire appel ou Gourou des lieux pour voir si ça vient bien de ça. Dan tu es là ? Sinon si vous savez ce qu'il faut modifier pour avoir le droit de le faire, je suis partant Bon sinon il y a mysql_get_client_info() qui retourne le client mysql, mais ça ne me donne pas la version de MySQL, à moins que ça ne soit lié et dans ce cas ça me va. Z'en pensez quoi ? ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kioob Posté 2 Octobre 2008 Partager Posté 2 Octobre 2008 De toutes façons le serveur MySQL est bien souvent sur une machine différente, et dans ce cas il n'y a que la méthode indiquée par KaRaK qui fonctionnera. D'ailleurs l'exécutable "mysql", c'est aussi le client MySQL. Il n'est pas forcément installé et ce n'est pas forcément la même version que le serveur. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick Posté 2 Octobre 2008 Auteur Partager Posté 2 Octobre 2008 Oki Kioob et merci pour la remarque. Le test est destiné uniquement à des serveurs dédiés en vu d'y installer un script. Le script ne nécessitant pas des ressources assez élevées pour justifier l'usage d'un serveur dédié supplémentaire à l'usage MySQL la question ne devrait jamais se poser. Au pire je vais utiliser la fonction php mysql_get_server_info() qui a l'inconvénient d'exiger une connexion à la base avant. Si je trouve mieux je vous le dirai. ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dan Posté 2 Octobre 2008 Partager Posté 2 Octobre 2008 Remplace shell_exec('mysql -V') par shell_exec('/usr/local/mysql/bin/mysql -V') Dan Ps1: pour information, mysql_get_client_info() retourne bien la bonne valeur, vu que le client et le serveur sont sur la même b&cane (et ont la même version bien sûr) Ps2: tu as bien accès au shell_exec, vu que tu n'es pas en safe_mode Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant