2012-01-18 118 views
0

當我嘗試運行命令rake db:create:all它給了以下錯誤:Mysql2安裝在Ruby on Rails的

rake db:create 
Can't connect to MySQL server on 'localhost' (10061) 
Couldn't create database for {"adapter"=>"mysql2", "database"=>"db/test", "username"=>"root", "password"=>nil, "host"=>"localhost", "pool"=>5, "timeout"=>5000}, charset: , collation: 
Can't connect to MySQL server on 'localhost' (10061) 
Couldn't create database for {"adapter"=>"mysql2", "database"=>"db/development", "username"=>"root", "password"=>nil, "host"=>"localhost", "pool"=>5, "timeout"=>5000}, charset: , collation: 
+1

你的MySQL服務器是否在運行? – 2012-01-18 17:32:17

+0

需要更多信息。這在過去有效嗎?如果是這樣,改變了什麼?數據庫主機和數據庫的名稱是否與您的配置文件相匹配?你可以使用'mysql'直接從命令行使用相同的憑據進行連接嗎? 'nil'是你添加到配置中的值來掩蓋真正的密碼,還是真的在配置文件中是什麼? – 2012-01-18 19:20:02

回答

1

是在配置信息/ database.yml中是否正確?數據庫名稱的「db/test」和「db/development」看起來很可疑。

從不在程序中使用root訪問權限,即使在測試中也是如此。通過努力創建SQL用戶並授予適當的訪問權限。

+0

@Unknown_Guy我是Ruby on Rails的新手..我嘗試將mysql數據庫連接到我的應用程序,因爲我只是將libmysql.dll文件複製到我的ruby bin文件夾中。我相信我沒有運行任何sql服務器..我只改變了gem文件和配置/ db.yml文件 – MAK 2012-01-19 06:33:15

+0

你需要在你的本地機器上安裝MySql服務器才能工作。 – dar7yl 2012-01-19 11:05:54

0

@ dary7yl謝謝你dary..it能夠創建表。這個問題通過安裝xamp並運行mysql服務器來解決。我也做了一個在database.yml文件中的更改..我將數據庫名稱從「db/development」更改爲「development」..當我試圖給數據庫名稱添加「db/name 「...再一次感謝的人..