問題描述
連接RDS實例時,提示以下其中一種錯誤信息:
ERROR 1045 (HY000): #28000ip not in whitelist
ERROR 2801 (HY000): #RDS00ip not in whitelist, client ip is XXX
解決方案
參考以下方法解決問題:
白名單中只有默認地址127.0.0.1。該地址表示不允許任何設備訪問RDS實例。需在白名單中添加設備的IP地址,具體操作請參見設置白名單。
白名單設置成了
0.0.0.0
。正確格式應該為0.0.0.0/0
。說明該地址允許任何設備訪問RDS實例,請謹慎使用。
如果開啟了高安全白名單模式,需進行以下檢查:
如果使用的是專有網絡的內網連接地址,請確保ECS內網IP地址添加到了專有網絡的分組。
如果使用的是經典網絡的內網連接地址,請確保ECS內網IP地址添加到了經典網絡的分組。
如果通過公網連接,請確保設備公網IP地址添加到了經典網絡的分組,專有網絡的分組不適用于公網。
您在白名單中添加的設備公網IP地址可能并非設備真正的出口IP地址。原因如下:
公網IP地址不固定,可能會變動。
IP地址查詢工具或網站查詢的公網IP地址不準確。
說明關于確認設備公網IP地址的方法,請參見以下鏈接。
如果您將ECS服務器或本地服務器的IP地址填入數據庫白名單后,從這些服務器上連接數據庫時,仍然提示“ip not in whitelist”錯誤,則有可能是因為ECS服務器或自建服務器在連接到數據庫時經過代理服務器,最終到達數據庫的IP地址是代理機的IP地址。此時應該將白名單設置為ECS服務器的出口IP地址,或設置為自建服務器的出口代理服務器IP地址。
適用于
云數據庫RDS MySQL版
云數據庫RDS SQL Server版
云數據庫RDS PostgreSQL版