2017-07-11 104 views
-1

我對AWS非常陌生,我試圖將我的Rails應用程序連接到直接在AWS EC2實例上創建的MySQL數據庫,而不是RDS(這會使它更容易通過RDS數據庫實例進行遠程連接)。將EC2實例上的MySQL連接到Rails應用程序

mySQL db被設置爲由不知道RDS的外包開發人員進行刮取。有沒有辦法讓我創建RDS實例,查看已經存在的MySQL數據庫,或者直接從我的Rails應用程序訪問這個數據庫?我使用Heroku進行部署,如果這有什麼區別的話。

我能之後使用ssh cli訪問EC2 Ubuntu的實例,然後連接到MySQL:

ssh -i path/to/credentials/scrapy-aws-keypair.pem [email protected]mysql -u root -p *****,它的偉大工程。但是,當我嘗試以下方法

development_sec: adapter: mysql2 database: my_database encoding: utf8 username: root password: xxxxxxxx host: ec2-52-xx-xxx-xx.us-east-2.compute.amazonaws.com port: 3306

,並嘗試瞬移,我得到Can't connect to MySQL server on 'ec2-52-xx-xxx-xx.us-east-x.compute.amazonaws.com'

任何建議將高度讚賞。謝謝。

回答

0

你應該能夠連接到EC2實例,並設置連接到你的MySQL數據庫的端口(默認3306)

+0

我已經更新了問題的端口。是的,我試圖連接並出現錯誤。看起來MySQL有一些安全設置可以防止沒有ssh的身份驗證......或者什麼? –

+0

檢查防火牆是否阻止了mysql連接。如果這很好,可能是因爲您沒有使用keypair.pem文件進行連接。我不知道是否可以使用mysql的ssh密鑰。嘗試在您的服務器上生成另一個ssh密鑰並將其用於mysql連接。您的機器上的密鑰將位於.ssh目錄中 – Silencer310

相關問題