MySQL ошибка с использованием Rails - PullRequest
0 голосов
/ 11 мая 2010

Я просто пытаюсь использовать mysql с рельсами с сервером mongrel. Я хорошо настроил сервер и могу запускать приложения rails, которым не нужен mysql, но когда я создаю проект с использованием (например) rails -d mysql blog, а затем создаю какой-то простой контроллер, например. ruby script / generate Test, затем поместите этот код в контроллер ...

class TestController < ApplicationController
 def index
  render :text => 'WORK'
 end
end

затем, когда я запускаю сервер и открываю localhost:3000/test, я получаю следующую ошибку:

=> Booting Mongrel  
=> Rails 2.3.5 application starting on http://0.0.0.0:3000  
=> Call with -d to detach  
=> Ctrl-C to shutdown server  
/!\ FAILSAFE /!\  Mon May 10 20:15:06 -0500 2010  
  Status: 500 Internal Server Error  
  Can't connect to MySQL server on 'localhost' (10061)  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/mysql_adapter.rb:589:in 'real_connect'  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/mysql_adapter.rb:589:in 'connect'  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/mysql_adapter.rb:203:in 'initialize'  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/mysql_adapter.rb:75:in 'new'  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/mysql_adapter.rb:75:in 'mysql_connection'  
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:223:in 'send'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:223:in 'new_connection'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:245:in 'checkout_new_connection'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:188:in 'checkout'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:184:in 'loop'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:184:in 'checkout' 
    C:/Ruby/lib/ruby/1.8/monitor.rb:242:in 'synchronize'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:183:in 'checkout'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:98:in 'connection'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_pool.rb:326:in 'retrieve_connection'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_specification.rb:123:in 'retrieve_connection'
    C:/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapter
s/abstract/connection_specification.rb:115:in 'connection'  
etc...

В браузере появляется сообщение "Извините, но что-то пошло не так"
Кто-нибудь знает, что я делаю не так?

Database setup:  
development:  
  adapter: mysql  
  encoding: utf8  
  reconnect: false  
  database: blog_development  
  pool: 5  
  username: root  
  password:  
  host: localhost   

Так что я не совсем уверен, что следующая часть, о которой вы спрашиваете, но mysql находится по адресу

C:\wamp\bin\mysql\mysql5.1.36\bin

Если я что-то пропустил, что вам нужно, я прошу прощения. Кроме того, база данных существует, и un / pw и так правильно

Ответы [ 2 ]

2 голосов
/ 19 мая 2010

Моя проблема заключалась в том, что у меня на компьютере было несколько серверов mysql, и я работал на сервере, отличном от того, который я использовал для ruby ​​... большой дох не уверен, как удалить этот вопрос

2 голосов
/ 11 мая 2010

Как сказано в предыдущем комментарии, пожалуйста, включите ваш config / database.yml, и мы поможем вам.

В файле config / database.yml вы увидите конфигурацию подключения Rails к вашей базе данных MySQL.

Вы увидите что-то вроде:

development:
  adapter: mysql
  host: localhost
  database: my_db
  username: my_user
  password: my_password
  port: 3306

Убедитесь, что у вас есть

  • Создана именованная база данных
  • То, что используемое вами имя пользователя имеет разрешение на подключение к этой базе данных
  • Что пароль правильный для этого пользователя.
...