我已經創建了亞馬遜RDS一個MySQL實例,它給了我吧以下設置: 通過MySQL工作臺連接到Amazon RDS
我試圖連接到這個MySQL服務器通了MySQL Workbench和它總是說SSH隧道沒有被認證。
我試圖通過命令提示符連接到服務器,它工作正常。這裏是我使用的命令:
mysql -h ['Endpoint' from setting] --ssl_ca=C:\Users\Jason\Downloads\mysql-ssl-ca-cert.pem -P 3306 - u ['Username' from setting] -p
這提示我輸入密碼,它工作正常!
現在,當我與MySQL工作臺嘗試,我得到的錯誤,並在日誌中這樣說:
error: [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
19:17:39 [ERR][ SSH tunnel]: Authentication error opening SSH tunnel: Authentication error, unhandled exception caught in tunnel manager, please refer to logs for details
這裏是設置:
SSH HostName: ['Endpoint' from settings]
SSH Username: ['Username' from settings]
SSH Password: password
SSH Key File: C:\Users\Jason\Downloads\mysql-ssl-ca-cert.pem
MySQL HostName: ['Endpoint' from settings]
MySQL Server Port: 3306
Username: ['Username' from settings]
Password: password same as SSH password
Default Schema: ['DB Name' from settings]
有一點要注意的是,我當我能夠通過Workbench成功連接到服務器時,在服務器上運行了以下命令。
GRANT USAGE ON *.* TO 'username'@'%' REQUIRE SSL;
此外,我在RDS的「數據庫安全組」下給出了本地IP地址(CIDR/IP)訪問權限。
你是對的!那麼這兩種連接類型之間有什麼區別,因爲兩者都要求SSL? – jmogera
更新了我的答案。 –