华为云云数据库rds使用MySQL命令行内网连接实例_云淘科技

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

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

非SSL加密连接RDS for MySQL实例,请参见通过内网连接RDS for MySQL实例(Linux方式)。

步骤1:购买ECS

登录管理控制台,查看是否有弹性云服务器。

有Linux弹性云服务器,执行3。
有Windows弹性云服务器,参考通过内网连接RDS for MySQL实例(Windows方式)。
无弹性云服务器,执行2。

图1 ECS实例

购买弹性云服务器时,选择Linux操作系统,例如CentOS。

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

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

在ECS实例基本信息页,查看ECS实例的区域和VPC。

图2 ECS基本信息

在RDS for MySQL实例基本信息页,查看RDS实例的区域和VPC。

图3 MySQL基本信息

确认ECS实例与RDS for MySQL实例是否处于同一区域、同一VPC内。

是,执行步骤2:测试连通性并安装MySQL客户端。
如果不在同一区域,请重新购买实例。不同区域的云服务之间内网互不相通,无法访问实例。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。
如果不在同一VPC,可以修改ECS的VPC,请参见切换虚拟私有云。

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

登录ECS实例,请参见《弹性云服务器用户指南》中“SSH密码方式登录”。
在RDS“实例管理”页面,单击实例名称进入“基本信息”页面。
选择“连接管理”,在“连接信息”模块获取实例的内网地址和数据库端口。

图4 连接信息

在ECS上测试是否可以正常连接到RDS for MySQL实例内网地址的端口。

telnet 192.168.6.144 3306

如果可以通信,说明网络正常。
如果无法通信,请检查安全组规则。

查看ECS的安全组的出方向规则,如果目的地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将RDS实例的内网IP地址和端口添加到出方向规则。

图5 ECS的安全组

查看RDS的安全组的入方向规则,如果源地址不为“0.0.0.0/0”且协议端口不为“全部”,需要将ECS实例的私有IP地址和端口添加到入方向规则,具体操作请参考设置安全组规则。

图6 RDS的安全组

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

找到对应版本链接,以mysql-community-client-5.7.38-1.el6.x86_64.rpm为例,下载安装包。建议您下载的MySQL客户端版本高于已创建的RDS实例中数据库版本。

图7 下载

将安装包上传到ECS。

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

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

rpm -ivh –nodeps mysql-community-client-5.7.38-1.el6.x86_64.rpm

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

rpm -ivh –replacefiles mysql-community-client-5.7.38-1.el6.x86_64.rpm

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

rpm -ivh –nodeps mysql-community-client-5.7.38-1.el6.x86_64.rpm

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

在RDS“实例管理”页面,单击实例名称进入“基本信息”页面。
在“数据库信息”模块的“SSL”处,查看SSL开关状态。

开关打开,执行3。
开关关闭,单击,在弹出框中,单击“是”,开启SSL加密。然后执行3。

单击“SSL”处的,下载“Certificate Download”压缩包,解压后获取根证书(ca.pem)和捆绑包(ca-bundle.pem)。
将根证书(ca.pem)上传到ECS。

云数据库RDS服务在2017年4月提供了20年有效期的新根证书,该证书在实例重启后生效。请在原有根证书到期前及时更换正规机构颁发的证书,提高系统安全性。

请参见如何确认SSL根证书的有效期。

推荐使用TLS v1.2及以上协议,低于该版本可能存在安全风险。
根证书捆绑包(ca-bundle.pem)包含2017年4月之后的新根证书和原有根证书。
ca.pem和ca-bundle.pem都可以实现SSL连接,ca-bundle.pem文件包含ca.pem,使用ca.pem即可。
RDS for MySQL实例不支持X509认证方式。

在ECS上执行以下命令连接RDS for MySQL实例。

方式一

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

示例:

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

方式二

mysql -h <host> -P -u <userName> -p –ssl-capath=<caPath>

表1 参数说明

参数

说明

<host>

在3中获取的内网地址。

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

<userName>

管理员账号root。

<caName>

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

<caPath>

CA证书目录路径。

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

Enter password:

常见问题

RDS实例连接失败怎么办

后续操作

登录实例后,您可以创建数据库,进行数据迁移等操作,具体请参见:

通过界面可视化创建MySQL数据库
通过调用API创建MySQL数据库
通过DAS管理MySQL数据库
迁移方案总览

父主题: 通过MySQL命令行客户端连接实例

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家