无法连接实例问题

最近更新时间:2019-09-09 09:54:04

网络类型不同

若云服务器(CVM)实例和 MySQL 实例的网络类型不一致,则 CVM 实例无法直接通过内网访问 MySQL 实例。

CVM 实例采用专有网络(VPC),MySQL 实例采用基础网络

  • 解决办法一(推荐):将 MySQL 实例从基础网络切换为 VPC 网络。
    注意:

    • 切换后,两者必须处于同一 VPC 网络,才能内网互通。
    • 基础网络切换至 VPC 网络后,无法再切换回来。
    • 切换后,VPC 网络访问立即生效,原有基础网络的访问将保留24小时,请在24小时内将该实例相关联的实例迁至 VPC 网络,以保证相关实例的访问。
  • 解决办法二:重新购买基础网络的 CVM 实例(CVM 实例不支持从 VPC 迁移到基础网络)。但是 VPC 网络比基础网络更安全,建议您使用 VPC 网络。
  • 解决办法三:CVM 实例使用 MySQL 实例的外网连接地址连接 MySQL 实例。这种方式的性能、安全性、稳定性较差,建议您使用 VPC 网络。

CVM 实例采用基础网络,MySQL 实例采用专有网络(VPC)

  • 解决办法一(推荐):将 CVM 实例从基础网络迁移到 VPC 网络,具体操作请参见 CVM 迁移示例
    注意:

    • 切换后,两者必须处于同一 VPC 网络才能内网互通。
    • 迁移前,请自行解绑内外网负载均衡 CLB 以及弹性网卡,并释放主网卡的辅助 IP,迁移后再进行绑定。
    • 迁移过程中,实例需要进行重启,请勿进行其他操作。
    • 迁移后,请注意检查实例运行状态,内网访问以及远程登录是否正常。
    • 基础网络切换 VPC 网络后不可逆,CVM 切换至 VPC 网络后与其他基础网络的云服务不互通。
  • 解决办法二:使用基础网络互通
  • 解决办法三:CVM 实例使用 MySQL 实例的外网连接地址连接 MySQL 实例。这种方式的性能、安全性、稳定性较差,建议您使用 VPC 网络。

私有网络不同

默认情况下,CVM 实例与 MySQL 实例的网络类型都为 VPC 网络且两者都位于同一 VPC 网络时,才能直接通过内网互通。如果位于不同 VPC,可以采取以下方法使 CVM 和 MySQL 进行互通。

  • 解决办法一(推荐):将 MySQL 实例迁移到 CVM 实例所在的 VPC 网络。
    具体操作:参考 MySQL 的 切换网络,将 MySQL 实例的 VPC 网络切换成 CVM 实例所在的 VPC 网络。
  • 解决办法二:在两个 VPC 网络之间建立 对接连接
    若不采取以上办法,则位于不同 VPC 网络的 CVM 和 MySQL 只能通过公网互通。这种方式的性能、安全性、稳定性较差。

安全组配置有误

若 CVM 实例和 MySQL 实例的安全组配置有误,则 CVM 实例无法直接通过内网或外网访问 MySQL 实例。

CVM 实例安全组配置有误

若想要使用 CVM 实例通过内网访问 MySQL 实例,需要在 CVM 安全组中配置出站规则,当出站规格的目标配置不为0.0.0.0/0且协议端口不为 ALL 时,需要把 MySQL 实例的内网 IP 及端口添加到出站规则中。

  1. 登录 安全组控制台,单击安全组名称进入 CVM 绑定的安全组详情页。
  2. 选择【出站规则】页,单击【添加规则】。
    填写您的IP地址(段)及需要放通的端口信息(MySQL 内网地址),选择允许放通。

MySQL 实例安全组配置有误

若想要指定的 CVM 实例通过内网访问 MySQL 实例或者使用外网访问 MySQL 实例,需要在 MySQL 安全组中配置入站规则,当入站规则的源端配置不为0.0.0.0/0且协议端口不为ALL时,需要把 CVM 实例的内网 IP 或者外网客户端 IP 及端口添加到入站规则中。

  1. 登录 安全组控制台,单击安全组名称进入 MySQL 实例绑定的安全组详情页。
  2. 选择【入站规则】页,单击【添加规则】。
    填写您允许访问的 IP 地址(段)及需要放通的端口信息(MySQL 内网端口),选择允许放通。
    注意:

    • MySQL 内网默认端口为3306,同时支持自定义端口,若修改过默认端口号,安全组中需放通 MySQL 新端口信息。
    • 使用外网访问 MySQL 实例时,安全组入站规则需要放通 MySQL 实例的3306端口。
    • 使用外网访问 MySQL 实例时,需将外网客户端的 IP 地址加入安全组入站规中。