2009-09-01 14 views
5
kratos-iii:railsproj zachinglis$ rake db:create 
(in /Users/zachinglis/Sites/rails/railsproj) 
Couldn't create database for {"adapter"=>"mysql", "host"=>"localhost", "username"=>"root", "password"=>nil, "database"=>"railsproj_development"}, charset: utf8, collation: utf8_general_ci (if you set the charset manually, make sure you have a matching collation) 

No tuve problemas al usar Sequel Pro e incluso crear dicha base de datos.rake db: crear - problemas de colación

¿Cómo puedo resolver esto? Tener una contraseña vacía nunca me dio problemas antes. Y realmente dudo que sea eso.

+1

¿Qué es exactamente lo que quiero saber? Por favor escribe una pregunta real! –

+2

Su contraseña está vacía probablemente sea el problema, pero ¿quién sabe con una "pregunta" tan vaga? Recomendaría reiniciar la pregunta con un signo de interrogación en algún lugar para que la gente sepa cuál es el punto real en cuestión. – Godeke

Respuesta

-1

¿La base de datos ya existe? ¿MySQL está configurado y ejecutándose? ¿Qué cambió? (Actualización del sistema operativo tal vez)? ¿Funciona una aplicación de rieles nuevos? ¿Y tus otros entornos (prueba, producción)?

¿Hay un trazo de retroceso? puede publicar (use rake --trace db: create). Por lo general, MySQL devuelve un mensaje de error muy explícito, Rake simplemente lo está comiendo.

+0

La base de datos existe, puedo acceder a MySQL. Creé el db como una prueba y creé una tabla. Empecé FRESH en Snow Leopard. Todos los entornos fallan de manera similar. Backtrace: ** Invocar db: crear (first_time) ** Invocar db: load_config (first_time) ** Invocar RAILS_ENV (first_time) ** Ejecutar RAILS_ENV ** Ejecutar db: load_config ** Ejecutar db: crear No se pudo crear la base de datos para {"adapter" => "mysql", "host" => "localhost", "username" => "root", "password" => nil, "database" => "railsproj_development "}, charset: utf8, collation: utf8_general_ci (si configura el charset de forma manual, asegúrese de tener una intercalación correspondiente) –

1

Acabo de encontrar esto también en una nueva instalación de Snow Leopard.

Tenía otro proyecto que creaba las bases de datos sin problemas, pero mi proyecto principal daba los errores que usted describió. Después de hurgar, la única diferencia era que el primero especificaba un socket, mientras que el proyecto que fallaba (y el tuyo también) utilizaba un host.

Es decir, esto hace que el problema database.yml:

development: 
    adapter: mysql 
    database: fanvsfan_development 
    username: root 
    password: 
    host: localhost 

Pero esto funciona:

development: 
    adapter: mysql 
    database: fanvsfan_development 
    username: root 
    password: 
    socket: /tmp/mysql.sock 

estoy seguro de lo que es la diferencia real, pero esto parece una solución alternativa

3

Sucedí el mismo problema después de instalar el nuevo servidor de base de datos MySQL5.0 a 5.1. Si ha instalado un nuevo servidor db, su biblioteca de gemas mysql no es adecuada para su servidor de base de datos. Puede resolver esto reinstalando mysql gem lib.

sudo env ARCHFLAGS="-arch i386" gem install mysql -- --with-mysql-config=/your/mysql_config 
3

Vuelva a instalar mysql-server y mysql-cliente utilizando este comando:

sudo apt-get install mysql-server mysql-client 

y algo más bibliotecas que es necesario instalar para hacer MySQL disponibles a Ruby:

sudo apt-get install libmysql-ruby 

Todo esto solucionó mi problema. Intentalo !!! :)

1

¿Cómo usar RVM? Haga esto para Rails v 2.3

export ARCHFLAGS="-arch x86_64" ; gem install --no-rdoc --no-ri mysql -v 2.7 -- --with-mysql-dir=/usr/local --with-mysql-config=/usr/local/mysql/bin/mysql_config 
Cuestiones relacionadas