更新时间:2026-04-24 GMT+08:00

使用MySQL命令行内网连接实例

当应用部署在弹性云服务器上,且该弹性云服务器与RDS for MySQL实例处于同一区域,同一VPC时,建议单独使用内网IP连接弹性云服务器与RDS for MySQL实例。

本章节介绍了Linux方式下,SSL加密内网连接RDS for MySQL实例。SSL连接实现了数据加密功能,具有更高的安全性。

非SSL加密连接RDS for MySQL实例,请参见购买并通过MySQL客户端连接RDS for MySQL实例

步骤1:创建ECS

  1. 登录管理控制台,查看是否有弹性云服务器。
    • 有Linux弹性云服务器,执行3
    • 无弹性云服务器,执行2
  2. 创建弹性云服务器时,选择Linux操作系统,例如CentOS。

    由于需要在ECS安装MySQL客户端,因此需要为ECS绑定弹性公网IP(EIP),并且选择与RDS for MySQL实例相同的区域、VPC和安全组,便于RDS for MySQL和ECS网络互通。

    购买Linux弹性云服务器请参考《弹性云服务器用户指南》中“购买弹性云服务器”章节。

  3. 在ECS实例基本信息页,查看ECS实例的区域和VPC。
  4. 在RDS for MySQL实例基本信息页,查看RDS实例的区域和VPC。
  5. 确认ECS实例与RDS for MySQL实例是否处于同一区域、同一VPC内。
    • 是,执行步骤2:测试连通性并安装MySQL客户端
    • 如果不在同一区域,请重新购买实例。不同区域的云服务之间内网互不相通,无法访问实例。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。
    • 如果不在同一VPC,可以修改ECS的VPC配置,请参见《弹性云服务器用户指南》中“切换虚拟私有云”的内容。

步骤2:测试连通性并安装MySQL客户端

  1. 登录ECS实例,请参见《弹性云服务器用户指南》中“VNC方式登录Linux弹性云服务器(控制台方式)”。
  2. 在RDS“实例管理”页面,单击实例名称进入基本信息页面。
  3. 选择“连接管理”,在“连接信息”模块获取实例的内网地址和数据库端口。
  4. 在ECS登录后的页面,测试是否可以正常连接到RDS for MySQL实例内网地址的端口。
    curl -kv 内网地址:端口

    示例:

    curl -kv 192.168.0.4:3306
    • 如果可以通信,说明网络连接正常。
    • 如果无法通信,请检查安全组的规则。
      • 查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将RDS实例的内网IP地址和端口添加到出方向规则。
      • 查看RDS的安全组的入方向规则,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参考设置安全组规则
  5. 将MySQL客户端安装包导入到ECS。

    方法一:

    在ECS上,执行以下命令下载Linux系统的MySQL客户端安装包,该方式需要为ECS绑定EIP。
    • 8.0版本安装包
      wget https://dev.mysql.com/get/mysql-community-client-8.0.28-1.el6.x86_64.rpm
    • 5.7版本安装包
      wget https://dev.mysql.com/get/mysql-community-client-5.7.38-1.el6.x86_64.rpm

    建议您下载的MySQL客户端版本高于已创建的RDS实例中数据库版本。

    方法二:

    在浏览器下载Linux系统的MySQL客户端安装包,然后将安装包上传到ECS。

    您可以使用任何终端连接工具(如WinSCP、PuTTY等工具)将安装包上传至ECS。

    • 8.0版本:

      打开链接,以mysql-community-client-8.0.28-1.el6.x86_64.rpm为例,下载安装包。

      图1 下载MySQL 8.0安装包
    • 5.7版本:

      打开链接,以mysql-community-client-5.7.38-1.el6.x86_64.rpm为例,下载安装包。

      图2 下载MySQL 5.7安装包

    建议您下载的MySQL客户端版本高于已创建的RDS实例中数据库版本。

  6. 执行以下命令安装MySQL客户端。
    • 8.0版本:
      rpm -ivh --nodeps mysql-community-client-8.0.28-1.el6.x86_64.rpm
    • 5.7版本:
      rpm -ivh --nodeps mysql-community-client-5.7.38-1.el6.x86_64.rpm
    • 如果安装过程中报冲突,可增加replacefiles参数重新安装,如下:

      rpm -ivh --replacefiles mysql-community-client-安装包版本号-1.el6.x86_64.rpm

    • 如果安装过程中提示需要安装依赖包,可增加nodeps参数重新安装,如下:

      rpm -ivh --nodeps mysql-community-client-安装包版本号-1.el6.x86_64.rpm

步骤3:使用命令行连接实例

在RDS“实例管理”页面,单击实例名称进入基本信息页面,在“SSL”处,查看SSL开启状态。

  • SSL未开启(默认),使用非加密连接,具体操作如下。
    1. 在ECS上,执行以下命令连接RDS for MySQL实例。
      mysql -h <host> -P <port> -u <userName> -p

      示例:

      mysql -h 172.16.0.31 -P 3306 -u root -p
      表1 参数说明

      参数

      说明

      <host>

      3中获取的内网地址。

      <port>

      3中获取的数据库端口,默认3306。

      <userName>

      管理员账号root。

    2. 出现如下提示时,输入数据库账号对应的密码。
      Enter password:
  • SSL已开启,只能使用SSL加密连接。加密连接实现了数据加密功能,具有更高的安全性,具体操作如下。
    1. 单击“SSL”处的,下载“Certificate Download”压缩包,解压后获取根证书(ca.pem)和捆绑包(ca-bundle.pem)。
    2. 将根证书(ca.pem)上传到ECS,建议和MySQL客户端安装包放在同一个目录。
      • 根证书捆绑包(ca-bundle.pem)包含2017年4月之后的新根证书和原有根证书。
      • ca.pem和ca-bundle.pem都可以实现SSL连接,ca-bundle.pem文件包含ca.pem,使用ca.pem即可实现SSL连接。
      • RDS for MySQL实例不支持X509认证方式。
    3. 在ECS上,执行以下命令连接RDS for MySQL实例。
      mysql -h <host> -P <port> -u <userName> -p --ssl-ca=<caName>
      示例:
      mysql -h 172.16.0.31 -P 3306 -u root -p --ssl-ca=ca.pem
      表2 参数说明

      参数

      说明

      <host>

      3中获取的内网地址。

      <port>

      3中获取的数据库端口,默认3306。

      <userName>

      管理员账号root。

      <caName>

      CA证书名称。

    4. 出现如下提示时,输入数据库账号对应的密码即连接成功。
      Enter password: