更新时间:2024-10-24 GMT+08:00

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

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

本章节介绍在Linux方式下,非SSL连接和SSL连接RDS for MariaDB实例。其中,SSL连接实现了数据加密功能,具有更高的安全性。

前提条件

  1. 登录弹性云服务器。
    • 创建并登录弹性云服务器,请参见《弹性云服务器快速入门》中“购买弹性云服务器”和“登录弹性云服务器”。
    • 通过弹性云服务器连接云数据库RDS实例,需要具备以下条件。
      • 该弹性云服务器与目标实例必须处于同一VPC内。
      • 该弹性云服务器必须处于目标实例所属安全组允许访问的范围内。
        • 如果目标实例所属安全组为默认安全组, 则无需设置安全组规则。
        • 如果目标实例所属安全组非默认安全组,请查看安全组规则是否允许该弹性云服务器访问。

          如果安全组规则允许弹性云服务器访问,即可连接实例。

          如果安全组规则不允许弹性云服务器访问,则需添加安全组规则。该弹性云服务器必须处于目标实例所属安全组允许访问的范围内。

  2. 使用客户端连接实例。

    在Linux操作系统中,您需要在可访问云数据库RDS的设备上安装MariaDB客户端。建议您下载的MariaDB客户端版本高于已创建的RDS实例中数据库版本。

使用命令行连接实例(SSL加密)

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 单击页面左上角的,选择“数据库 > 云数据库RDS”。
  4. “实例管理”页面,单击实例名称进入“基本信息”页面。
  5. “数据库信息”模块的“SSL”处,查看SSL开关状态。

    • 开关打开,执行7
    • 开关关闭,单击,在弹出框中,单击“确定”,开启SSL加密。然后执行6

  6. 单击“SSL”处的,下载“Certificate Download”压缩包,解压后获取根证书(ca.pem)和根证书捆绑包(ca-bundle.pem)。
  7. 将根证书(ca.pem)导入Windows/Linux操作系统,请参见将根证书导入Windows/Linux操作系统
  8. 连接RDS for MariaDB实例。以Linux操作系统为例,执行如下命令。

    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

    表1 参数说明

    参数

    说明

    <host>

    内网地址。在目标实例的“基本信息”页面,“连接信息”模块的“内网地址”

    <port>

    数据库端口,默认3306。在目标实例的“基本信息”页面,“连接信息”模块的“数据库端口”

    <userName>

    数据库账号名,即云数据库RDS账号(默认数据库账号为root)。

    <caName>

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

  9. 出现如下提示时,输入数据库账号对应的密码。

    Enter password:
    图1 连接示例

使用命令行连接实例(非SSL加密)

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 单击页面左上角的,选择“数据库 > 云数据库RDS”。
  4. “实例管理”页面,单击实例名称进入“基本信息”页面。
  5. “数据库信息”模块的“SSL”处,查看SSL开关状态。

    • 开关打开,单击,在弹出框中,单击“确定”,关闭SSL加密。然后执行6
    • 开关关闭,执行6

  6. 连接RDS for MariaDB实例。以Linux系统为例,执行如下命令。

    mysql -h <host> -P <port> -u <userName> -p

    示例:

    mysql -h 172.16.0.31 -P 3306 -u root -p

    表2 参数说明

    参数

    说明

    <host>

    内网地址。在目标实例的“基本信息”页面,“连接信息”模块的“内网地址”

    <port>

    数据库端口,默认3306。在目标实例的“基本信息”页面,“连接信息”模块的“数据库端口”

    <userName>

    数据库账号名,即云数据库RDS账号(默认数据库账号为root)。

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

    Enter password:
    图2 通过非SSL方式连接