2014-02-27 218 views
4

我想從我的電腦連接到MySQL在Amazon RDS,使用MySql WorkBench,或HeidiSql甚至console Mysql.exe和我得到這個錯誤的所有時間:連接到Amazon RDS的MySQL遠程

ERROR 2003 (HY000): Can't connect to MySQL server on 'MY-SERVER-NAME' (10060)

  1. 在實例的安全組中,我創建了一個新的入站規則,該規則允許所有流量並應用它,並且仍然是相同的錯誤。
  2. 我的計算機上沒有活動的防火牆,並具有良好的互聯網接入
  3. 我能夠從亞馬遜的EC3服務器訪問數據庫,還有我使用HeidiSql連接,以及完全相同的設置(主機,用戶名,密碼)只是沒有在我的電腦上工作

仍然沒有任何工作。我很確定我的安全組被配置爲允許外部連接,正如在下一個屏幕截圖中可以看到的那樣,另一個地方是防火牆規則? Screenshot of SecurityGroups

+0

您是否閱讀了入門文檔? http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.html –

+0

是的,我正在輸入一個已經存在的項目,所以這個數據庫已經被創建,但其他所有內容都是寫入的。 –

+0

嘗試使用連接公共DNS地址。 – Drewness

回答

3

2003年的錯誤是訪問被拒絕的錯誤我願意打賭,你沒有配置RDS接受你的IP地址。

這可以通過轉到數據庫安全組 - >點擊默認 - >並添加一個新的CIDR/IP範圍來完成。我相信如果將它設置爲0.0.0.0/0,它將接受所有IP地址

+1

我試過這個......也嘗試過讓所有的流量都沒有工作...... –

0

安全組設置只是防火牆規則。如果您可以從主機上配置的MySQL端口上遠程登錄,那麼您遇到了問題,那麼您就沒有安全組問題。

很有可能MySQL授權不允許外部IP。如果您知道root用戶/密碼,並且可以使用它從您的EC2實例進行連接,請確保您用來從外部連接的用戶擁有正確的權限。下面是關於如何添加一個新的特權或創建一個新用戶的文檔:

http://dev.mysql.com/doc/refman/5.1/en/grant.html http://dev.mysql.com/doc/refman/5.1/en/adding-users.html http://dev.mysql.com/doc/refman/5.0/en/access-denied.html

0

你安全組分配給您的RDS實例?如果您未修改默認安全組,則需要將您的安全組添加到您的RDS實例。

4

在我想要遠程連接的VPC上使用RDS實例時,我遇到了同樣的問題。要解決這個問題,我需要做到以下幾點:

  • 轉到VPC管理控制檯在AWS
  • 轉到互聯網網關(左側)
  • 創建和附加一個互聯網網關到我的VPC。記下這個網關的ID。
  • 轉到路由表
  • 編輯與您的RDS實例相關聯的子網相關的路由表
  • 添加路由:
    • 目的地:0.0.0.0/0
    • 目標:的ID你互聯網網關

我沒有這條路在我的表,因爲我手動和Wi創建我的VPC不要使用嚮導,但如果使用嚮導,它會自動爲您創建此路線。

注意:這假定您的安全組已經配置爲允許您的IP連接。

0

就我而言,我的公司有兩個不同的網絡連接。當我去谷歌搜索「我的知識產權是什麼?」我有一個答案; 209.x.y.z.當我去checkip.amazonaws.com時,我得到了另一個答案; 199.a.b.c.

我已經爲209.x.y.z添加了VPC安全組規則,結果證明我需要他們爲199.a.b.c.

爲199.a.b.c添加規則修復了此問題。