簡體   English   中英

無法將Ruby on Rails連接到遠程mysql數據庫

[英]Can't connect Ruby on Rails to remote mysql database

我正在嘗試將Rails 3應用程序連接到Godaddy服務器上托管的mysql數據庫。 我可以使用mysql客戶端進行遠程連接,但運行applicaton時無法連接。 我能夠在本地mysql上進行連接,但是當我嘗試連接到遠程托管數據庫時,出現此錯誤:

Mysql2 :: Error(無法連接到“ [主機IP地址]”上的MySQL服務器(111))

這是我的database.yml

development:
    adapter: mysql2
    encoding: utf8
    host: host_ip_address
    port: 3306
    database: database_name
    username: user_name
    password: password

如果有幫助,我正在Ubuntu機器上開發應用程序。

  • 在您的my.cnf ,查找以下行:

     bind-address = 127.0.0.1 

    並將地址設置為0.0.0.0

  • 訪問mysql

     mysql -u root -p 
  • 比在mysql服務器上創建用戶並向所有用戶授予特權:

     CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; 

我猜想,按照我的原始評論,您的遠程數據庫拒絕了除本地主機以外的任何連接。 基於該假設,這里有兩個解決方案:

  1. 使用ssh隧道。 有大量的howto用於通過ssh隧道進行連接,例如, http : //www.howtogeek.com/howto/ubuntu/access-your-mysql-server-remotely-over-ssh/

  2. 確保您的遠程數據庫正在接受遠程連接。 在以下stackoverflow線程上簽出可接受的答案無法連接到MySQL服務器錯誤111

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM