连接
本文介绍AnalyticDB for MySQL中连接的常见问题及解决方法。
常见问题概览
连接失败,报错Can't connect to MySQL server
在连接AnalyticDB for MySQL时遇到Can't connect to MySQL server,常见的原因是白名单设置有误。
请先参考下文的步骤,检查白名单设置。
连接失败,报错Unkown MySQL server host
在连接AnalyticDB for MySQL时遇到Unkown MySQL server host,常见的原因是连接地址有误。
请先检查连接地址拼写无误,如确认无误,请参考下文的步骤,检查连接地址。
-
执行
ping <AnalyticDB for MySQL连接地址>,检查网络连通性。如果网络连接不通,常见的原因是:
-
从本地机器连接AnalyticDB for MySQL,却使用了VPC地址。因为VPC地址仅用于同一VPC网络内的连接,而本地机器不属于VPC网络,所以网络不通。
-
发起连接的ECS实例,与AnalyticDB for MySQL集群,不属于同一VPC,所以VPC网络不通。
您可以在ECS控制台和云原生数据仓库AnalyticDB MySQL控制台分别查看VPC ID。如果VPC ID不同,说明不属于同一VPC,请使用公网地址或者切换AnalyticDB for MySQL的VPC。
ECS实例的VPC ID
AnalyticDB for MySQL集群的VPC ID


-
-
在云原生数据仓库AnalyticDB MySQL控制台查看并复制AnalyticDB for MySQL集群的公网地址。
如控制台未显示公网地址,说明尚未开通公网。请单击申请网络,申请公网地址。申请公网地址,不收费。
-
重新执行
ping <AnalyticDB for MySQL公网地址>。ping通,说明连接地址无误。
-
将连接地址更换为公网地址,重新连接。
连接AnalyticDB for MySQL失败怎么办?
如果连接AnalyticDB for MySQL失败,可参考以下步骤,排查并解决问题。
当查询过程中关闭了JDBC连接后服务端的查询会终止吗?
使用SUBMIT JOB、INSERT INTO SELECT或CREATE TABLE AS SELECT 命令提交的异步执行会继续查询,其他查询都会终止。
建立了JDBC连接,当客户端超时(socketTimeout)但连接没有关闭,此时服务端的资源会立即释放吗?
资源会立即释放。
使用easyswoole PHP开发框架时,连接RDS没有问题,但是连接不上AnalyticDB for MySQL集群是什么原因?
PreparedStatement不支持show语句。
连接数突然增高,如何检查是当前哪个用户或客户端IP的连接数?
该内容仅适用于数仓版和企业版。
在云原生数据仓库AnalyticDB MySQL控制台,在数仓版或企业版集群的诊断与优化>连接信息页签下,查看用户连接数和客户端IP连接数的统计信息。
AnalyticDB for MySQL集群的最大连接数是多少?
AnalyticDB for MySQL集群的连接数与集群的规格相关,连接数没有限制,建议不超过50000。对于小规格的集群来说,连接数过多会导致资源不足,无法承载。详细信息,请参见使用限制。
如何让其他人远程连接我的AnalyticDB for MySQL集群?
如需让同事或其他人员远程连接您的AnalyticDB for MySQL集群,请按以下步骤操作:
-
获取对方的出口 IP:请对方在终端中执行
curl ipinfo.io/ip获取其公网出口 IP。 -
设置白名单:将对方的出口 IP 添加到集群白名单。具体操作请参见设置白名单。
-
申请公网地址:如果对方使用本地办公电脑(即非阿里云上的 ECS 等设备)连接,需为集群申请公网地址。具体操作请参见申请公网地址。
-
创建数据库账号:建议为对方创建专用的数据库账号并按需授权,避免共用高权限账号。具体操作请参见创建数据库账号。
-
提供连接信息:将公网地址(或内网地址)、端口(3306)、账号和密码提供给对方。对方可使用 MySQL 命令行或客户端工具连接。具体操作请参见MySQL 命令行连接。

