説明
ApsaraDB RDS for MySQLインスタンスまたはApsaraDB RDS for MariaDBインスタンスに接続すると、次のいずれかのエラーメッセージが表示されます。
エラー2005 (HY000): 不明なMySQLサーバーホスト 'xxxxxxx' (110または11004)
SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
名前またはサービスが不明
原因
DNSサーバーはRDSインスタンスのエンドポイントを解決できません。
解決策
RDSインスタンスのエンドポイントが正しいかどうかを確認します。 次のいずれかの理由により、エンドポイントが正しくない場合があります。
入力するエンドポイントの形式が無効です。 次の図に示すように、有効な形式がs rm-XXX.XXX.rds.aliyuncs.comされます。
入力するエンドポイントは、手動でリリースされたパブリックエンドポイントです。
入力したエンドポイントが、許可されている最大長を超えています。 その結果、エンドポイントは切り捨てられます。
入力したエンドポイントが正しいが、上記のエラーメッセージが続く場合は、DNSサーバーのIPアドレスをAlibaba Cloud DNSサーバーのIPアドレスに変更します。
クラシックネットワーク経由でRDSインスタンスに接続する場合は、DNSサーバーのIPアドレスを10.143.22.116および10.143.22.118に変更します。
VPCを含む内部ネットワーク経由でRDSインスタンスに接続する場合は、DNSサーバーのIPアドレスを100.100.2.136および100.100.2.138に変更します。
インターネット経由でRDSインスタンスに接続する場合は、DNSサーバーのIPアドレスを223.5.5.5および223.6.6.6に変更します。
参考資料
RDSインスタンスのエンドポイントにpingを送信して、RDSインスタンスのIPアドレスを取得できます。 IPアドレスは、移行やプライマリ /セカンダリの切り替えなどの理由で変更される場合があります。 RDSインスタンスへの接続にIPアドレスを使用しないことを推奨します。 エンドポイントは変更されません。 エンドポイントを使用してRDSインスタンスに接続することを推奨します。
適用範囲
ApsaraDB RDS for MySQL
ApsaraDB RDS for MariaDB