2010-06-30 25 views
3

我試圖部署生產服務器上RoR應用程序,然後得到這個錯誤:Capistrano的部署:拒絕訪問用戶 '根' @ 'localhost' 的(使用密碼:YES)(:: mysql的錯誤)

 
Access denied for user 'root'@'localhost' (using password: YES) (Mysql::Error) 

但當我跑命令:

 
rake db:migrate RAILS_ENV=production 

它通過。我也從命令行連接到mysql:

mysql -u root -p

它通過,我可以看到所有的表都創建。

IM分支上的工作,在我deploy.rb我已經設置分支:

 
set :branch 'myBranch' 

和apache2的配置文件,我設置RAILS_ENV太:

 
<VirtualHost *:80> 
    ServerName daemon.com 
    DocumentRoot /home/hy/work/log/current/public/ 
    RailsEnv production 
</VirtualHost> 

請幫幫忙,謝謝!

回答

0

你可能已經通過了這個,但我建議你仔細檢查一下你的config/environments/production.yml是否包含有效的證書並被推送到版本庫中。

您提到您已嘗試在服務器上手動執行遷移。您是否從您目前部署的應用程序所在的同一個目錄運行遷移?

(/家/ HY /工作/日誌/電流)

0

我知道這是舊的,但你需要做的是設置default_env在deploy.rb文件和設置環境變量。

事情是這樣的:

set :default_env, { 
    'var1' => 'value1', 
    'var2' => 'value2' 
} 

這將爲斯特拉努3.希望這將幫助任何人絆在這個問題的工作。

+0

你可以試試看嗎? – Jeremie 2017-03-11 15:37:19

相關問題