tutorial rails migraciones example ejemplos conectar con and ruby-on-rails ruby mysql2

ruby on rails - rails - ¿Cómo resuelvo la “versión de biblioteca incompatible” para la gema mysql2 con ruby 2.3 en OS X?



ruby on rails mysql configuration (5)

Estoy usando ruby ​​2.3, y en el archivo gem, tengo la gema mysql2 listada. Pero cuando intento ejecutar rake db:migrate , obtengo lo siguiente:

/Users/me/.gem/ruby/2.3.0/gems/mysql2-0.4.2/lib/mysql2.rb:31:in `require'': incompatible library version - /Users/me/.gem/ruby/2.3.0/gems/mysql2-0.4.2/lib/mysql2/mysql2.bundle (fatal)

Parece que no puedo evitar esto. He instalado Mysql 5.7 con Homebrew, he intentado actualizar el paquete, desinstalar y reinstalar la gema mysql2, todo en vano.

¿Cómo puedo resolver esto?


Experimenté el mismo problema. Tenía Ruby 2.3.4 instalado y usando rieles 4.6.2.

Hubo dos problemas, y el equipo de soporte de la compañía de alojamiento que estaba usando me ayudó a resolver el problema.

La primera fue que el lib de mysql2 que se instaló estaba, por defecto, vinculado a ruby ​​1.8 en lugar de ruby ​​2

# lld ../2.2.0/mysql2-0.4.4/mysql2/mysql2.so ... ... libruby.so.1.8 => /usr/lib64/libruby.so.1.8 (0x00007f2af1f8a000) ...

El segundo problema fue compilar la biblioteca con la configuración del servidor mysql instalada

Así que la gema mysql2 tuvo que ser desinstalada y reinstalada con el ruby ​​lib correcto y compilada con la configuración mysql correcta.

A continuación se muestran los comandos.

gem uninstall mysql2 gem install mysql2 -- --with-mysql-config=/usr/bin/mysql_config --with-opt-lib=/where/my/ruby22/lib_was_located/


Experimenté este problema moviéndome a Ubuntu 16.04

Lo siguiente hizo el truco

sudo apt-get install g++ sudo apt-get install build-essential


He resuelto esto con la gem pristine mysql2 seguida de una spring stop .


Terminé resolviendo esto con gem pristine --all


corriendo sudo gema prístina mysql2 no funcionó para mí.

Tuve que desinstalar y reinstalar la gema mysql2.