2014-01-21 37 views
0

我有以下正確運行:如何連接Rails與MySQL?

  1. rails new simple
  2. rails server(工作)
  3. rails generate controller demo index
  4. mysql -u root -p和創建數據庫以及數據庫完成分配GRANT特權時。

現在的問題是,我在我的MAC 10.7上使用了Bitnami-RubyStack包。當我想運行rake db:schema:dump,我得到這個錯誤:

bash-3.2$ rake db:schema:dump 
rake aborted! 
Access denied for user 'root'@'localhost' (using password: YES) 
/Applications/rubystack-1.9.3-18/simple/config/environment.rb:5:in `<top (required)>' 
Tasks: TOP => db:schema:dump => environment 
(See full trace by running task with --trace) 

即使我跑授予權限。

我也檢查了我的DB.yml的用戶名和密碼:

development: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: simple_development 
    pool: 5 
    username: root 
    password: something 
    socket: /tmp/mysql.sock 
    host: 127.0.0.1 
+0

你可以通過終端通過'mysql -u root -p'訪問嗎? – timpone

+0

看來你的mysql用戶名或密碼是錯誤的...嘗試使用終端命令登錄mysql -u用戶名-p密碼.. –

回答

0

在你的數據庫配置

development: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: simple_development 
    pool: 5 
    username: root 
    password: something 
    socket: /tmp/mysql.sock 
    host: 127.0.0.1 

,你應使用插座或主機,而不是兩個。由於套接字適用於您(mysql -u root -p作品),請嘗試與您的應用程序一起使用它。如果有任何權限問題或不適用,您必須在您的mysql控制檯中創建[email protected]並使用主機參數。

+0

我花了很多時間後找到了答案。我保持我的db.yml文件中的套接字和主機。但我現在改變了我的主機名。非常感謝 –