2011-06-09 20 views
5

Estoy tratando de abrirme camino en el enorme y complejo laberinto que es la configuración de los rieles. Hasta ahora, he logrado configurar rvm en ubuntu (por alguna razón, ruby ​​está desactualizado en el repositorio de ubuntu). He logrado configurar un proyecto de rieles. Quiero que mi proyecto de prueba use mysql en lugar de mysqlite.¿Cómo instalo la gema mysql2 en ubuntu, cuando estoy usando rails3 via rvm?

Cuando traté 'rake db: migrate', que tiene un error: "!!! Falta la gema mysql2 Añadir a su Gemfile: joya 'mysql2'"

Cuando intento 'joya instalar mysql ', me sale un error, diciéndome que necesito proporcionar parámetros para el comando de instalación. Sin embargo, la lista de parámetros es enorme, y no tengo idea de cuáles seleccionar.

¿Cómo puedo obtener rails3 via rvm ejecutándose en ubuntu con mysql?

Gracias.

Respuesta

0
+0

Me temo que esta relación no ayuda. No proporciona ninguna información sobre lo que debe hacer al instalar las gemas mysql o mysql con rvm. Simplemente da la forma normal, lo que no produce los mismos problemas. – bob

+0

Para la instalación de la gema mysql, tal vez pueda usar algo como esto -> "gem install mysql - --with-mysql-config =/usr/local/mysql/bin/mysql_config" – Bjoernsen

0

creo que es necesario agregar nombre de la gema a su Gemfile, que se encuentra en la raíz de los proyectos:

Se debería leer algo como esto:

source 'http://rubygems.org' 

gem 'rails', version 
gem 'mysql', version 

donde versión es la versión de la gema que' Me gustaría instalar y tendré un montón de otra información por defecto.

A continuación, navegue hasta el directorio de su proyecto y ejecute el comando paquete y debe estar configurado.

+0

Hacer esto produce el mismo error que obtuve antes, solo rodeado de más texto. Es el mismo problema: la gema mysql o mysql2 necesita tener opciones para instalar, pero el código de error no me dice qué opciones necesita o por qué. Nuevamente, el problema parece ser específico de la instalación de rieles usando rvm – bob

2

Primero, necesita instalar mysql. Puedes instalarlo usando el administrador de paquetes de Ubuntu. No se requieren pasos especiales. También necesita crear inicialmente su base de datos y usuario utilizando la herramienta mysql. Este enlace muestra cómo hacerlo:

http://www.tutorialspoint.com/ruby-on-rails/rails-database-setup.htm

En segundo lugar, es necesario tener la gema mysql2 que aparece en su Gemfile. Esto le dice a Rails que siga adelante y use esa gema. Se necesita una línea como la siguiente:

gem 'mysql2', '< 0.3' 

estoy especificando la versión a ser inferior a 0,3 porque estoy usando Rails 3.0.7 y la versión 0.3 y posteriores son de rieles 3.1. Además, asegúrese de usar la gema mysql2 y no mysql, parece que maneja mejor la codificación de caracteres.

En tercer lugar, ejecute "paquete de instalación" para que Rails descargue e instale la gema mysql2.

Por último, es necesario cambiar el archivo database.yml para poner en la información de conexión de la base de datos de este modo:

development: 
    adapter: mysql2 
    database: your_database_name 
    username: your_username 
    password: your_password 
    encoding: utf8 

La parte de codificación es justo lo que estoy usando, es posible que tenga algo diferente . Esta entrada le dice a Rails cómo encontrar su base de datos en el entorno de desarrollo.

Una vez que todo esté listo, las cosas deberían funcionar.

+0

. He instalado mysql y tengo la gema mysql2 listada en mi gemfile. De hecho, me he rendido por completo de esta, y eliminé mi instalación de rvm. Es muy difícil para mí. Ruby en Ubuntu parece ser difícil. – bob

22

Tuve el mismo problema, todo lo que necesitas hacer es instalar primero libmysqlclient-dev.

aplausos

1
sudo apt-get install libmysql-ruby libmysqlclient-dev 

Si el comando anterior no funciona porque libmysql-ruby no se puede encontrar, lo siguiente debería ser suficiente:

sudo apt-get install libmysqlclient-dev 

En Red Hat/CentOS y otras distribuciones utilizando yum:

sudo yum install mysql-devel 

En Mac OS X con Homebrew:

brew install mysql 

continuación, ejecute

bundle install 

para instalar a las gemas que se enumeran en Gemfile

Cuestiones relacionadas