erreur sur mysql/mysql_api

16316
,

Bonjour à tous,

Je suis en train de suivre le tuto d'installation de Ruby. Tout fonctionne à merveille jusqu'au lancement du serveur. J’obtiens cette réponse :

c:/Ruby/lib/ruby.gems/1.9.1/gems/mysql-2.9.0-x86-mingw32/lib/mysql.rb:6:in 'require': cannot load such file -- mysql/mysql_api (LoadError)

Du coup lorsque je vais sur localhost:3000 je n'ai pas de réponse. J'ai bien tenté de copier la librairie Mysql, mais j'obtiens le message :

this gem was compiled for 6.0.0 but the client librairie is 5.0.27. (RuntimeError)

Est-ce que quelqu'un aurait une petite idée sur la manip à suivre pour me sortir de ce problème.

Merci d'avance et bonne journée à tous

3 Réponse

21649
,

Bonjour,

J'ai le même problème.

16316
,

Salut Angelus68,

J'ai réussi à régler le problème. Je pense que c'est surtout lié à la nouvelle version de Ruby, en particulier la version 1.9.3.

En fait, comme le précise si souvent notre maitre TutoVidéaste :-), il faut, il est impératif de lire toute la doc et surtout ce que renvoie les commandes lancées en console.

Pour moi voici ce que j'ai fait :

  • Utilisation de rubyinstaller-1.9.3-p374.exe dans le répertoire c:\ruby

    Là l'installation se déroule correctement et surtout conformément à la Video.

  • ouverture de la console et installation de rails :

    après plusieurs minutes d'attente (je suis en wifi), rails est installé hormis deux fichiers 'Lib' qui parait-il ne sont pas important puisque appartenant à la documentation.

Hormis le fait d'avoir ces deux fichiers de la doc non téléchargés, je n'ai pas d'autres erreurs, mais j'installe quand même le DevKit;

décompression dans le répertoire : c:\ruby\devkit

en console : ruby dk.rb init

Tout ce passe encore à merveille et le fichier config.yml me confirme bien que l'installation a eu lieu dans le répertoire c:\ruby

la suite de la doc toujours en console : ruby dk.rb install

Là encore cela ce passe bien.

--> réinstallation de Rails avec gem install rails qui renvoie successfully installed rails-3.2.11

/***********

CREATION DU PROJET

*****************/

sur d:\sites ( pour moi évidemment, toi tu le mets où tu veux=)

en console : rails new ruby -d mysql

/******************************

!!!!!!!!!!!!!!! ATTENTION !!!!!!!!!!!!!!!!

*******************************/

C'est là que se trouve le blem :

Dans ta console, au niveau du résultat tu as une ligne qui te dit que tu dois installer le dll adequate pour mysql.

Dans la video, notre Maitre, va le chercher sur le net à l'adresse : instantrails.rubyforge.org.......etc......

Ta console par contre t'indique l'adresse :

http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick

Tu te retrouves avec un fichier mysql-connector.zip. Dans lequel tu vas chercher le fichier libmysql.dll dans le rep "lib" que tu vas copier dans le rep c:\Ruby\bin (pour moi).

Enfin a contrario de la video, je n'ai pas modifier le "gem mysql2" en "gem mysql" dans le fichier gemfile, ni dans database.yml

Tu continue à suivre le tuto

Et là tout fonctionne a merveille

Sinon, en complément du tuto video, tu peux suivre les indications de cette page :

Rails débutant

VOUALOU

Excusez moi, j'ai peut-être été un peu long mais, j'ai essayé de reprendre l'installation complète et de tous noter histoire de comprendre.

Par contre, je ne saisi toujours pas la différence entre mysql2 et mysql ?

Bonne journée à tous

21649
,

Salut merci sa fonctionne.

la différence entre mysql2 et mysql ? Alore la je nez rien trouver sur la différence entre mysql2 et mysql.

Oui la sa fonctionne au niveaux de rails server mais pour la connections a la db c'est une autre histoire