更新时间:2024-11-06 GMT+08:00

使用MySQL客户端通过内网连接实例

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

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

步骤1:购买ECS

  1. 登录管理控制台,查看是否有弹性云服务器。
    图1 ECS实例
  2. 购买弹性云服务器时,选择Linux操作系统,例如CentOS。

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

    购买Linux弹性云服务器请参考《弹性云服务器快速入门》中“购买弹性云服务器”章节。

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

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

  1. 登录ECS实例,请参见《弹性云服务器用户指南》中“SSH密码方式登录”。
  2. 在GaussDB(for MySQL)“实例管理”页面,单击实例名称进入实例概览页面。
  3. 在实例的网络信息区域获取读写内网地址和数据库端口。
    图4 读写内网地址和数据库端口
  4. 在ECS上测试是否可以正常连接到GaussDB(for MySQL)实例读写内网地址和端口。

    telnet 192.168.6.144 3306

    • 如果可以通信,说明网络正常。
    • 如果无法通信,请检查安全组规则。
      • 查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将GaussDB(for MySQL)实例的读写内网地址和端口添加到出方向规则。
      • 查看GaussDB(for MySQL)的安全组的入方向规则,如果源地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参考设置GaussDB(for MySQL)安全组规则
        图5 GaussDB(for MySQL)的安全组

  5. 在浏览器下载Linux系统的MySQL客户端安装包。

    在下载页面找到对应版本链接,以mysql-community-client-8.0.21-1.el6.x86_64为例,下载安装包。建议您下载的MySQL客户端版本高于已创建的GaussDB(for MySQL)实例中数据库版本。

  6. 将安装包上传到ECS。

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

  7. 在ECS上执行以下命令安装MySQL客户端。

    rpm -ivh --nodeps mysql-community-client-8.0.21-1.el6.x86_64.rpm

    • 如果安装过程中报conflicts,可增加replacefiles参数重新安装,如下:

      rpm -ivh --replacefiles mysql-community-client-8.0.21-1.el6.x86_64.rpm

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

      rpm -ivh --nodeps mysql-community-client-8.0.21-1.el6.x86_64.rpm

步骤3:使用命令行连接实例(SSL加密)

  1. 在GaussDB(for MySQL)“实例管理”页面,单击实例名称进入实例概览页面。
  2. “实例信息”模块的“SSL”处,查看SSL开关状态。
    • 开关打开,执行3
    • 开关关闭,单击,在弹出框中,单击“是”,开启SSL加密。然后执行3
  3. 单击“SSL”处的,下载“Certificate Download”压缩包,解压后获取根证书(ca.pem)和捆绑包(ca-bundle.pem)。
  4. 将根证书(ca.pem)上传到ECS。
  5. 在ECS上执行以下命令连接GaussDB(for MySQL)实例。

    mysql -h <host> -P <port> -u <userName> -p --ssl-ca=<caName>

    示例:

    mysql -h 192.168.0.79 -P 3306 -u root -p --ssl-ca=ca.pem

    表1 参数说明

    参数

    说明

    <host>

    GaussDB(for MySQL)实例的读写内网地址。

    <port>

    GaussDB(for MySQL)的数据库端口,默认3306。

    <userName>

    管理员账号root。

    <caName>

    CA证书名称,该文件需放在执行该命令的路径下。

  6. 出现如下提示时,输入数据库账号对应的密码:
    Enter password: