2013-04-22 262 views
1

我是ror的初學者。我正在研究Ubuntu。Ruby on Rails項目與Mysql數據庫

我可以用默認數據庫創建一個新的ror項目,沒有任何問題,一切都是okey ..但我想創建一個具有mysql數據庫的項目。

我使用這個命令:

railse new myproject -d mysql 

然後,我把我的MySQL用戶名和passwork在database.myl文件,但是當我嘗試啓動服務器,因此它不工作,我收到此錯誤信息:

=> 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/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect': no implicit conversion of Fixnum into String (TypeError) 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `initialize' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `new' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `mysql2_connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `block (2 levels) in checkout' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `block in checkout' 
    from /home/mehmet/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in `block in connection' 
    from /home/mehmet/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/railtie.rb:88:in `block in <class:Railtie>' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing' 
    from /home/mehmet/Desktop/ror/neistersin/config/environment.rb:5:in `<top (required)>' 
    from /home/mehmet/Desktop/ror/neistersin/config.ru:3:in `require' 
    from /home/mehmet/Desktop/ror/neistersin/config.ru:3:in `block in <main>' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/builder.rb:51:in `instance_eval' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/builder.rb:51:in `initialize' 
    from /home/mehmet/Desktop/ror/neistersin/config.ru:in `new' 
    from /home/mehmet/Desktop/ror/neistersin/config.ru:in `<main>' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/builder.rb:40:in `eval' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/builder.rb:40:in `parse_file' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/server.rb:200:in `app' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/commands/server.rb:46:in `app' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/server.rb:304:in `wrapped_app' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/rack-1.4.5/lib/rack/server.rb:254:in `start' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/commands/server.rb:70:in `start' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/commands.rb:55:in `block in <top (required)>' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/gems/railties-3.2.13/lib/rails/commands.rb:50:in `tap' 
    from /home/mehmet/.rvm/gems/ruby-2.0.0-p0/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

它可能在你的database.yml文件錯字的錯誤,我可以看到你的database.yml文件 – bernabas 2013-04-22 20:55:48

+0

是,請您出示的database.yml內容 - 但不要告訴我們你的真實用戶名和密碼 – weltschmerz 2013-04-22 20:57:37

+0

'測試: 適配器:mysql2 編碼:UTF8 重新連接:假 數據庫:neistersin_test 池:5 用戶名:root密碼 :123456 插座:在/ var /運行/ mysqld的/ mysqld.sock' 同爲生產和測試 – Mehmet 2013-04-22 21:06:07

回答

2

在database.yml中:

密碼:123

應該是

密碼: '123'

注:「

這可能不是最終的解決方案,但對接近問題的第一步。