問題描述
連接RDS MySQL或MariaDB實例時,提示以下其中一種錯誤信息:
ERROR 2003 (HY000): Can’t connect to MySQL server on ‘XXX’(10038或10060或110)
無法連接到數據庫:XXX
解決方案
本文主要介紹以下2種方法:
ECS通過內網無法訪問RDS的解決辦法
ECS以外的設備無法訪問RDS的解決辦法
ECS通過內網無法訪問RDS的解決辦法
檢查ECS和RDS實例是否位于不同的地域。如果不同,請參見解決無法連接實例問題。
檢查ECS和RDS的網絡類型是否不同。如果不同,例如一個是經典網絡,一個是專有網絡,請參見解決無法連接實例問題。
如果ECS和RDS實例的網絡類型都是專有網絡,則檢查ECS與RDS實例是否位于不同的VPC。如果不同,請參見解決無法連接實例問題。
檢查ECS實例的內網IP地址是否已添加到RDS實例的白名單。如果未添加,請參見設置白名單。
檢查白名單是否設置成了0.0.0.0,正確格式應該為0.0.0.0/0。
說明該地址允許任何設備訪問RDS實例,有安全風險,請謹慎使用。
如果開啟了高安全白名單模式,請進行以下檢查:
如果使用的是專有網絡的內網連接地址,請確保ECS內網IP地址添加到了專有網絡的分組。
如果使用的是經典網絡的內網連接地址,請確保ECS內網IP地址添加到了經典網絡的分組。
檢查ECS實例中配置的RDS內網地址和端口是否正確。
說明可能添加了ECS的內網IP地址到RDS的白名單,但是使用的是RDS外網地址。
ECS以外的設備無法訪問RDS的解決辦法
ECS以外的設備訪問RDS時,只能通過外網連接。如果連接失敗,解決辦法如下所示。
檢查是否已設置RDS白名單。如果未設置,請參見設置白名單。
檢查白名單是否設置成了0.0.0.0。正確格式為0.0.0.0/0。
說明該地址允許任何設備訪問RDS實例,有安全風險,請謹慎使用。
如果開啟了高安全白名單模式,需確保設備公網IP地址是添加到了經典網絡的分組。
說明專有網絡的分組不適用于公網。
如果您已設置白名單,那么連接失敗很可能是因為您在白名單中添加的設備公網IP地址并非設備真正的出口IP地址。原因如下所示:
說明關于確認設備公網IP地址的方法,請參見定位本地IP。
公網IP地址不固定,可能會變動。
IP地址查詢工具或網站查詢的公網IP地址不準確。
檢查您使用的連接地址是否為RDS的內網地址。如果是,需要改為外網地址。
適用于
云數據庫RDS MySQL版
云數據庫RDS MariaDB版