Gem :: LoadError pour mysql2 gem, mais il est déjà dans Gemfile

Gem::LoadError Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile 

Cette erreur s’est produite lors du chargement des fichiers suivants:

 active_record/base 

C’est l’erreur que j’ai sur le serveur rails en cours d’exécution.

 The mysql2 gem has been added to the Gemfile as well. 

J’ai effectué une bundle install et j’ai essayé de redémarrer le serveur tout en obtenant l’erreur.

Si vous avez cette erreur lors de la mise à niveau vers les rails 4.2.4 (également avec les rails 4.1.5), essayez d’utiliser cette version de mysql2:

 gem 'mysql2', '~> 0.3.18' 

Apparemment, mysql2 n’est toujours pas compatible avec les nouvelles versions de rails, car le 4.2.4 de rails est assez récent pour répondre à cette question le 8 septembre 2015, alors utilisez la ligne ci-dessus dans votre fichier Gem et lancez:

 bundle install 

Tu devrais être bon pour aller

Cela a fonctionné pour moi quand j’ai spécifié une version de mysql2 gem avant la plus récente (0.4.0). Pour une raison quelconque, il y a un problème avec Rails 4.2.4 et cette gem 0.4.0. Donc, pour résoudre le problème, je viens de spécifier la gem précédente: 0.3.20 et ça a bien fonctionné pour moi!

 gem 'mysql2', '~> 0.3.20' bundle install 

Vous pouvez vérifier toutes les versions de gemmes ici: https://rubygems.org/gems/mysql2/versions

Changer pour

 gem 'mysql2', '~> 0.3.18' 

dans votre Gemfile.

Ce fil sur le mysql2 Github officiel dit de le faire. Vous devez déclarer ce numéro de version si vous avez la version rails 4.xx

https://github.com/brianmario/mysql2/issues/675

Ensuite, lancez la bundle update mysql2 .

J’ai eu la même erreur après une mise à niveau vers Rails 4.1 et j’ai réussi à le résoudre en mettant à jour mysql2. Exécutez ceci dans votre dossier d’application rails:

 $ bundle update mysql2 

Ce problème peut se produire si vous utilisez une version plus récente de rails> 4

Faites ces deux étapes simples, cela fonctionnera. Ouvrez votre Gemfile et trouvez la ligne ci-dessous

 gem 'mysql2' 

remplacer cette ligne par une version spécifique de mysql comme ci-dessous

 gem 'mysql2', '~> 0.3.18' 

Arrêtez maintenant le serveur et exécutez le bundle

 bundle install 

Maintenant, redémarrez votre serveur. Ça devrait marcher.

 rails s 

Être débutant au rbuy je ne pouvais pas comprendre la gemme de ligne ‘mysql2’, ‘~> 0.3.18’

cela signifie simplement aller dans le dossier de votre projet rails, puis il y a une ligne pour mysql2 qui sera comme 0.4 *, donc vous pouvez la changer en gem ‘mysql2’, ‘~> 0.3.18’

et comme nous avons une nouvelle définition, nous devons reconstruire la dépendance afin de faire cette commande simple comme expliqué sur l’ installation du bundle supérieur

Il ne charge pas mysql2 gem, car la nouvelle version de mysql2 (0.4.1) gem est incapable de charger mysql2_adaptor. Cela fonctionne pour moi.

 gem 'mysql2', '~> 0.3.13' 

et courir

 bundle install 

J’ai eu la même erreur et c’est parce que Rails 4.1 nécessite minimum mysql2 version 0.3.13, et maximum compatible avec Windows est la version 0.3.11.

J’ai donc modifié le fichier c:\RailsInstaller\Ruby1.9.3\lib\ruby\gems\1.9.1\gems\activerecord-4.1.1\lib\active_record\connection_adapters\mysql2_adapter.rb et changé de ligne gem 'mysql2', '~> 0.3.13' pour faire gem 'mysql2', '~> 0.3.11' , et ça marche si loin.

Voici comment j’ai corrigé ceci:

  bundle config bundle config --delete without bundle install --deployment --without development test postgres 

Crédits: Comment défaire l’installation de paquets – sans

Il ne charge pas mysql2 gem, car la nouvelle version de mysql2 (> = 0.4.0) gem incapable de charger mysql2_adaptor. Pouvez-vous essayer ça?

gem 'mysql2', '~> 0.3.13'

J’espère que cela devrait fonctionner.

J’ai résolu le problème en installant mysql2 gem local (install gem mysql2, bundle install) et en ajoutant la ligne suivante au fichier Gemfile:

gem 'mysql2'

Définir l’adaptateur mysql2 dans database.yml

adapter: mysql2

était aussi important!

Je suis flambant neuf sur Ruby on Rails et les sites Web, mais j’entends ce qui a fonctionné pour moi.

Je devais changer mon gemfile, gem ‘mysql2’ pour gemmer ‘mysql2’, ‘~> 0.3.13’ puis dans les rails j’ai tapé installation de paquet puis j’ai essayé des rails s et des erreurs alors j’ai essayé mise à jour de paquet mysql2 puis dans des rails tapés rails s, et cela a fonctionné

J’ai déjà installé mysql2 0.4.5 mais cela m’a donné cette erreur, donc j’ai installé une autre version de mysql2 en:

gem installer mysql2 –version 0.3.20

J’espère que ceci résoudra votre problème.