2012-01-31 65 views
2

這裏是我輸入的命令: mysqldump --host = ec2-107-20-94-121.compute-1.amazonaws.com --password = XXXXX --user = bill --single -dnsaction blink10 [/ products/productspriceNEW]> /data/blink10.sql錯誤2003與mysqldump

這是我得到的: mysqldump:有錯誤:2003:無法連接到'ec2-107-20-94- 121.compute-1.amazonaws.com'(110)試圖連接時

根據我的防火牆已經檢查過mysql的端口是否打開,錯誤來自哪裏?

回答

0

除了在您的實例上配置防火牆之外,您可能還需要授權EC2接受3306上的傳入連接。

見例如http://bigtrapeze.com/2011/03/01/allow-remote-mysql-connections-to-an-aws-instance/

或者,您也可以打開端口轉發的SSH隧道。
http://www.howtogeek.com/howto/ubuntu/access-your-mysql-server-remotely-over-ssh/

+0

確定第一件事,我沒有那個事情來註釋掉my.cnf文件,當我試圖打開端口3306它說它已經打開....問題與SSH隧道,我試圖通過設置完成後通過自動化作業來運行它,你可以在一系列命令中創建ssh隧道,或者只能通過用戶和putty工作嗎? - 我只是建立SSH隧道並運行相同的命令,但隧道建立後用localhost替換我的主機名? – user1179295 2012-01-31 01:39:41

+0

沒錯,如果你可以通過SSH訪問EC2實例進行正常的交互式會話,那麼你可能已經設置了一些密鑰來允許你這樣做。建立隧道時可以做同樣的事情。如果您希望它自動執行,則可能需要爲運行自動備份的uid創建一個密鑰對,並將公鑰上傳到EC2主機。 – 2012-01-31 01:48:56

+0

我想我搞砸了一下隧道的語法,它吐在我身後[root @ domU-12-31-39-0A-61-AC etc]#bash:-L:命令沒有找到想法? – user1179295 2012-01-31 02:36:27

0

你不是一個防火牆,能攔截傳出流量(阻止端口3306)或個人也許防火牆後面的網絡中?

+0

忘記了:您的用戶(帳單)必須具有權限才能訪問您選擇的數據庫。但我認爲這更多關於路線。 – gabrielhpugliese 2012-01-31 01:58:16

+0

端口3306在兩個實例(用於防火牆)上都是開放的...此外,兩個實例都在同一個數據中心....這就是我的困惑 – user1179295 2012-01-31 02:03:27

+0

這很奇怪。你能通過'mysql -h ec2-107-20-94-121.compute-1.amazonaws.com -U bill -p'與該用戶連接嗎? – gabrielhpugliese 2012-01-31 02:14:06