
# 使用MySQL命令行内网连接实例
当应用部署在弹性云服务器上，且该弹性云服务器与TaurusDB实例处于同一区域，同一VPC时，建议单独使用内网IP连接弹性云服务器与TaurusDB实例。
本章节介绍了Linux方式下，SSL加密内网连接TaurusDB实例。SSL连接实现了数据加密功能，具有更高的安全性。
#### 步骤1：购买ECS
1. [登录ECS控制台](https://console.huaweicloud.com/ecm/?locale=zh-cn#/ecs/manager/vmList)，查看是否有弹性云服务器。
   - 有Linux弹性云服务器，执行[3]。
   
   - 有Windows弹性云服务器，参考[通过MySQL-Front连接TaurusDB实例](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_4008.html)。
   
   - 无弹性云服务器，执行[2]。
   
   
   图1ECS实例   
   ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000001991319233.png "点击放大") 
2. 购买弹性云服务器时，选择Linux操作系统，例如CentOS。
   由于需要在ECS下载MySQL客户端，因此需要为ECS绑定弹性公网IP（EIP），并且选择与TaurusDB实例相同的区域、VPC和安全组，便于TaurusDB和ECS网络互通。
   购买Linux弹性云服务器的详细内容请参考[快速购买和使用Linux ECS](https://support.huaweicloud.com/qs-ecs/ecs_01_0103.html)。
   
3. 在ECS实例基本信息页，查看ECS实例的区域和VPC。
   图2ECS基本信息   
   ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002553318985.png "点击放大")
   
   
4. 在TaurusDB实例概览页面，查看TaurusDB实例的区域和VPC。
   图3查看TaurusDB实例的区域和VPC   
   ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002173608032.png "点击放大") 
5. 确认ECS实例与TaurusDB实例是否处于同一区域、同一VPC内。
   - 是，执行[步骤2：测试连通性并安装MySQL客户端]。
   
   - 如果不在同一区域，请重新购买实例。不同区域的云服务之间内网互不相通，无法访问实例。请就近选择靠近您业务的区域，可减少网络时延，提高访问速度。
   
   - 如果不在同一VPC，可以修改ECS的VPC，请参见[切换虚拟私有云](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0504.html)。
    
 
 #### 步骤2：测试连通性并安装MySQL客户端
1. 通过VNC登录ECS实例，详细步骤请参见[通过VNC登录Linux ECS](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0136.html)。
   1. 单击"![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002459271912.jpg)"，选择"计算 \> 弹性云服务器 ECS"。
   
   2. 选择要登录的弹性云服务器，单击"操作"列下的"远程登录"。
   
   3. 在弹出的"登录Linux云服务器"窗口中，选择"其他方式"下的VNC方式，单击"立即登录"。
   
   4. （可选）如果远程登录界面上无法显示鼠标，查看面板上方是否有"本地鼠标"按钮，单击"本地鼠标"按钮，鼠标就可以正常显示了。
   
   5. 根据界面提示，输入弹性云服务器密码。 如果出现"Welcome to Huawei Cloud Service"，表示成功登录云服务器。
      
    
2. 在TaurusDB"实例管理"页面，单击实例名称，进入实例概览页面。
3. 在实例的"网络信息"区域获取读写内网地址和数据库端口。
   图4读写内网地址和数据库端口   
   ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002051077077.png "点击放大") 
4. 在ECS上测试是否可以正常连接到TaurusDB实例读写内网地址和端口。
   ```
   curl -kv 内网地址:端口
   ```
   示例：
   ```
   curl -kv 192.168.6.144:3306
   ```
   - 如果可以通信，说明网络正常。
     图5网络正常   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002448382413.png "点击放大") 
   
   - 如果无法通信，请检查安全组规则。
     - 查看ECS的安全组的出方向规则，如果目的地址不为"0.0.0.0/0"且协议端口不为"全部"，需要将TaurusDB实例的读写内网地址和端口添加到出方向规则。
       图6ECS的安全组   
       ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002563272214.png "点击放大")
       
       
     
     - 查看TaurusDB的安全组的入方向规则，需要将ECS实例的私有IP地址和端口添加到入方向规则，具体操作请参考[设置TaurusDB安全组规则](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_4012.html)。
      
    
5. 选择方法一或方法二，将MySQL客户端安装包导入ECS，并安装客户端。
 
- [方法一：执行命令获取安装包]
  1. 在ECS上，执行以下命令下载Linux系统的MySQL客户端安装包，该方式需要为ECS绑定EIP。
     以mysql-community-client-8.0.24-1.el8.x86_64.rpm为例：
     ```
     wget https://dev.mysql.com/get/mysql-community-client-8.0.24-1.el8.x86_64.rpm
     ```
     ![](https://support.huaweicloud.com/usermanual-taurusdb/public_sys-resources/caution_3.0-zh-cn.png)
     建议您下载的MySQL客户端版本高于已创建的TaurusDB实例中数据库版本。
     
  
  2. 执行以下命令安装MySQL客户端。
     ```
     rpm -ivh --nodeps mysql-community-client-8.0.24-1.el8.x86_64.rpm
     ```
     图7安装MySQL客户端   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002414717748.png "点击放大")
     - 如果安装过程中报conflicts，可增加replacefiles参数重新安装，如下：
       ```
       rpm -ivh --replacefiles mysql-community-client-安装包版本号-1.el8.x86_64.rpm
       ```
       
     
     
     
     - 如果安装过程中提示需要安装依赖包，可增加nodeps参数重新安装，如下：
       ```
       rpm -ivh --nodeps mysql-community-client-安装包版本号-1.el8.x86_64.rpm
       ```
       
      
   
- [方法二：浏览器下载安装包]
  1. 在浏览器下载Linux系统的MySQL客户端安装包，然后将安装包上传到ECS。 您可以使用任何终端连接工具（如WinSCP、PuTTY等工具）将安装包上传至ECS。
     打开[链接](https://downloads.mysql.com/archives/community/)，以mysql-community-client-8.0.24-1.el8.x86_64.rpm为例，下载安装包。
     图8下载MySQL 8.0安装包   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002448037905.png "点击放大")
     ![](https://support.huaweicloud.com/usermanual-taurusdb/public_sys-resources/caution_3.0-zh-cn.png)
     建议您下载的MySQL客户端版本高于已创建的TaurusDB实例中数据库版本。
     
  
  2. 执行以下命令安装MySQL客户端。
     ```
     rpm -ivh --nodeps mysql-community-client-8.0.24-1.el8.x86_64.rpm
     ```
     - 如果安装过程中报conflicts，可增加replacefiles参数重新安装，如下：
       ```
       rpm -ivh --replacefiles mysql-community-client-安装包版本号-1.el8.x86_64.rpm
       ```
       
     
     
     
     - 如果安装过程中提示需要安装依赖包，可增加nodeps参数重新安装，如下：
       ```
       rpm -ivh --nodeps mysql-community-client-安装包版本号-1.el8.x86_64.rpm
       ```
       
      
   
#### 步骤3：使用命令行连接实例
在"实例管理"页面，单击实例名称，进入"实例概览"页，在"SSL"处，查看SSL开启状态。
- SSL未开启，使用[非加密连接]。
- SSL已开启，建议使用[SSL加密连接]。加密连接实现了数据加密功能，具有更高的安全性。
 
- [非加密连接]
  
  1. 在ECS上，执行以下命令连接TaurusDB实例。
     ```
     mysql -h host -P port -u userName -p
     ```
     示例：
     ```
     mysql -h 172.16.0.31 -P 3306 -u root -p
     ```
     表1参数说明 
     | 参数         | 说明                             |
     |:---|:---|
     | *host*     | TaurusDB实例的读写内网地址。             |
     | *port*     | TaurusDB的数据库端口，默认3306。         |
     | *userName* | TaurusDB的数据库账号， 默认的管理员账号是root。 |
        
     
  
  2. 出现如下提示时，输入数据库账号对应的密码：
     ```
     Enter password:
     ```
     图9非SSL加密连接成功   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002448382421.png "点击放大") 
   
- [SSL加密连接]
  
  1. 在"实例管理"页面，单击实例名称，进入"实例概览"页。
  
  2. 单击"SSL"处的"下载"，下载"Certificate Download"压缩包，解压后获取根证书（ca.pem）和捆绑包（ca-bundle.pem）。
  
  3. 将根证书（ca.pem）上传到ECS，建议和MySQL客户端安装包放在同一个目录。
     ![](https://support.huaweicloud.com/usermanual-taurusdb/public_sys-resources/note_3.0-zh-cn.png)
     - 您可以使用终端连接工具（如WinSCP、PuTTY等）上传根证书，详细内容请参考[上传文件到云服务器方式概览](https://support.huaweicloud.com/ecs_faq/ecs_faq_0049.html)。
     
     - 推荐使用TLS v1.2及以上协议，低于该版本可能存在安全风险。
     
     - 根证书捆绑包（ca-bundle.pem）包含2017年4月之后的新根证书和原有根证书。
     
     - ca.pem和ca-bundle.pem都可以实现SSL连接，ca-bundle.pem文件包含ca.pem，使用ca.pem即可。
     
     - TaurusDB实例不支持X509认证方式。
       
  
  4. 在ECS上执行以下命令连接TaurusDB实例。
     ```
     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
     ```
     表2参数说明 
     | 参数         | 说明                             |
     |:---|:---|
     | *host*     | TaurusDB实例的读写内网地址。             |
     | *port*     | TaurusDB的数据库端口，默认3306。         |
     | *userName* | TaurusDB的数据库账号， 默认的管理员账号是root。 |
     | *caName*   | CA证书名称，该文件需放在执行该命令的路径下。        |
        
     
  
  5. 出现如下提示时，输入数据库账号对应的密码：
     ```
     Enter password:
     ```
     图10SSL加密连接成功   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002522402588.png "点击放大") 
   
#### 其他连接实例的方法
- [使用MySQL命令行公网连接实例](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_4010.html)
- [通过MySQL-Front连接TaurusDB实例](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_4008.html)
- [通过JDBC连接TaurusDB实例](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_02_0018.html)
- [通过Python连接TaurusDB实例](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_02_0019.html)
 
#### 常见问题
#### TaurusDB实例连接失败怎么办？
详细排查思路请参见[TaurusDB实例连接失败怎么办](https://support.huaweicloud.com/taurusdb_faq/taurusdb_faq_0012.html)。
#### 如果忘记账号名或密码，如何重置后登录实例？
您可以在管理控制台，在"实例管理"页面，选择指定的实例，选择"更多 \> 重置密码"，通过重置密码操作修改密码后重新登录实例。详细内容请参见[重置TaurusDB实例管理员密码](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_0051.html)。
