[英]Ruby on Rails having a rough time connecting to MySQL
我很難讓Ruby連接到mySQL。 我可以使用mySQL工作台使MYSQL進行連接,所以很好。 這是我嘗試運行DBConsole時遇到的錯誤。
W:\testMySQL>rails dbconsole
Enter password: ********
ERROR 1045 (28000): Access denied for user 'coffeetowndev'@'localhost' (using pa
ssword: YES)
我正在GoDaddy帳戶的數據庫上運行,因此無法將所有特權授予該用戶。 我叫哥達迪,他們發誓'RoR'部門能夠使用我的設置進行連接。 說到這里,這是database.yml文件。
development:
adapter: mysql
encoding: utf8
reconnect: false
port: 3306
database: coffeetowndev
pool: 5
username: coffeetowndev
password: ********
hostname: coffeetowndev.db.5850247.hostedresource.com
在相關/不相關的說明中,我無法安裝mySQL2 gem,因此我使用的是mySQL。
編輯:整個database.yml文件
development:
adapter: mysql
encoding: utf8
reconnect: false
port: 3306
database: coffeetowndev
pool: 5
username: coffeetowndev
password: ********
hostname: coffeetowndev.db.5850247.hostedresource.com
test:
adapter: mysql
encoding: utf8
reconnect: false
port: 3306
database: coffeetowntest
pool: 5
username: coffeetowntest
password: ********
hostname: coffeetowntest.db.5850247.hostedresource.com
production:
adapter: mysql
encoding: utf8
reconnect: false
port: 3306
database: coffeetown
pool: 5
username: coffeetown
password: ********
hostname: coffeetown.db.5850247.hostedresource.com
您的SQL服務器上是否安裝了PHPMyAdmin? 通常,每當我創建一個新用戶時,我都會遍歷PHPMyAdmin並在要在RoR上使用的數據庫上為該用戶設置具有Grant訪問權限。 您的database.yml看起來不錯,問題出在SQL方面。
當您部署到Godaddy時,您使用的是生產環境,而不是開發環境? 我沒有使用Godaddy托管Rails應用程序的經驗,但是有可能他們將所有托管的應用程序配置為默認用於生產環境(許多Rails主機都這樣做)。 因此,如果使用的是其他環境,則可能未使用您期望的用戶名/密碼組合。
您可能還想嘗試通過編寫快速而骯臟的PHP測試腳本來測試您的憑據,如下所示:
$con = mysql_connect("coffeetowndev.db.5850247.hostedresource.com","coffeetowndev","******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($con);
此外,它上面還說它失敗了,但是它正在嘗試使用用戶'coffeetowndev'@'localhost'
。 您必須確保使用諸如以下這樣的東西向該用戶授予權限:
grant select,insert,update,delete on coffeetowndev.* to 'coffeetowndev'@'localhost' identified by ********
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.