2013-08-12 3 views
1

Я использую рубиновую версию 1.9.3 p448 и рельсы версии 3.2.13 все мои драгоценные камни до даты.Запуск сервера рельсов с ошибкой для проекта mysql

я создать проект с помощью следующего кода rails new simple_cms -d mysql

, но когда я начинаю рельсы сервера с кодом rails s/rails server

я получил следующую ошибку

[email protected]:~/projects/Sites/simple_cms$ rails s 
=> Booting WEBrick 
=> Rails 3.2.13 application starting in development on http://0.0.0.0:3000 
=> Call with -d to detach 
=> Ctrl-C to shutdown server 
Exiting 
/home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/mysql2-0.3.13/lib/mysql2/client.rb:58:in `connect': Access denied for user 'root'@'localhost' (using password: NO) (Mysql2::Error) 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/mysql2-0.3.13/lib/mysql2/client.rb:58:in `initialize' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `new' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `mysql2_connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `block (2 levels) in checkout' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `block in checkout' 
    from /home/wasif/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in `block in connection' 
    from /home/wasif/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/activerecord-3.2.13/lib/active_record/railtie.rb:88:in `block in <class:Railtie>' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing' 
    from /home/wasif/projects/Sites/simple_cms/config/environment.rb:5:in `<top (required)>' 
    from /home/wasif/projects/Sites/simple_cms/config.ru:3:in `require' 
    from /home/wasif/projects/Sites/simple_cms/config.ru:3:in `block in <main>' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/builder.rb:51:in `instance_eval' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/builder.rb:51:in `initialize' 
    from /home/wasif/projects/Sites/simple_cms/config.ru:in `new' 
    from /home/wasif/projects/Sites/simple_cms/config.ru:in `<main>' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/builder.rb:40:in `eval' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/builder.rb:40:in `parse_file' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/server.rb:200:in `app' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/commands/server.rb:46:in `app' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/server.rb:304:in `wrapped_app' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/rack-1.4.5/lib/rack/server.rb:254:in `start' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/commands/server.rb:70:in `start' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/commands.rb:55:in `block in <top (required)>' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/commands.rb:50:in `tap' 
    from /home/wasif/.rvm/gems/ruby-1.9.3-p448/gems/railties-3.2.13/lib/rails/commands.rb:50:in `<top (required)>' 
    from script/rails:6:in `require' 
    from script/rails:6:in `<main>' 

пожалуйста, помогите мне, как решить эта ошибка ... спасибо!

+0

Попробуйте войти на ваш сервер mysql с помощью 'mysql -u root' с терминала и убедитесь, что параметры в config/database.yml верны для вашей среды. – vee

ответ

0

Похоже, пароль не задан. В вашей базе данных.yml вы должны указать пароль для своей БД. Например: если вы установили пароль на вашем компьютере Devlopment на: корень, он должен выглядеть следующим образом:

development: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: your_db_name 
    pool: 5 
    username: root 
    password: root 
    socket: 'depending on your os something like:' /tmp/mysql.sock 

Также рекомендую не проверять этот файл в VCS. Сделайте копию, назовите его database.example.yml и введите там свой конфиг и заполнитель для пароля.

+0

Что произойдет, если вы введете mysql -u root? если вы можете войти в систему, нет корневого набора pw. Таким образом, вы можете удалить строку пароля из своего yml – Flo

+0

Thnx .. он работает! –

+0

Фактически я использовал неправильный синтаксис в yml-файле ... когда я проверяю, что это правильно, тогда это сработало. и теперь его штраф! :) –

Смежные вопросы