Amazon Relational Database Service
用户指南 (API Version 2014-10-31)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

连接到运行 MariaDB 数据库引擎的数据库实例

Amazon RDS 配置您的数据库实例后,您就可以使用标准 MariaDB 客户端应用程序或实用工具与该实例连接。在连接字符串中,指定数据库实例终端节点中的 DNS 地址作为主机参数,并指定数据库实例终端节点中的端口号作为端口参数。

可以使用 AWS 管理控制台、AWS CLI describe-db-instances 命令或 Amazon RDS API DescribeDBInstances 操作列出 Amazon RDS 数据库实例的详细信息,包括其终端节点。如果终端节点值为 myinstance.123456789012.us-east-1.rds.amazonaws.com:3306,则需要在 MariaDB 连接字符串中指定以下值:

  • 对于主机或主机名,请指定 myinstance.123456789012.us-east-1.rds.amazonaws.com

  • 对于端口,请指定 3306

可以使用 mysql 命令行实用工具等工具连接 Amazon RDS MariaDB 数据库实例。有关使用 mysql 实用工具的更多信息,请转到 MariaDB 文档中的 mysql 命令行客户端。您可以用来连接的一个基于 GUI 的应用程序是 HeidiSQL;有关更多信息,请转到 Download HeidiSQL 页面。

导致新数据库实例连接故障的两个常见原因如下:

  • 数据库实例是使用安全组创建的,而该安全组无法授权来自运行 MariaDB 应用程序或实用工具的设备或 Amazon EC2 实例的连接。如果数据库实例是在 Amazon VPC 内部创建的,则该 VPC 必须包含可授权连接的 VPC 安全组。如果数据库实例是在 VPC 外部创建的,则该 VPC 必须包含可授权连接的数据库安全组。

  • 数据库实例是使用默认端口 3306 创建的,而您公司的防火墙规则不允许公司网络中的设备连接到该端口。要修复此故障,请重新创建使用不同端口的实例。

可以在连接到 Amazon RDS MariaDB 数据库实例时使用 SSL 加密功能。有关信息,请参阅 MariaDB 数据库实例的 SSL 支持

从 mysql 实用工具进行连接

要使用 mysql 实用工具连接到数据库实例,请在客户端计算机上的命令提示符处键入以下命令,以便连接到 MariaDB 数据库实例上的数据库。替换 <endpoint> 的数据库实例的 DNS 名称,替换用于 <mymasteruser> 的主用户名,并在系统提示输入密码时提供所用的主密码。

mysql -h <endpoint> -P 3306 -u <mymasteruser> -p

您会看到类似以下内容的输出。

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 272 Server version: 5.5.5-10.0.17-MariaDB-log MariaDB Server Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql >

使用 SSL 进行连接

在创建 数据库实例时,Amazon RDS 会为实例创建一个 SSL 证书。如果启用 SSL 证书验证,SSL 证书会将数据库实例终端节点作为 SSL 证书的公用名 (CN) 包含在内以防止欺诈攻击。要使用 SSL 连接到数据库实例,请执行以下步骤:

使用 mysql 实用工具连接使用 SSL 加密的数据库实例

  1. 此处下载适用于所有区域的根证书。

  2. 在命令提示符处键入以下命令,以便使用 mysql 实用工具连接到使用 SSL 加密的数据库实例。将参数 -h 替换为数据库实例的 DNS 名称。将参数 --ssl-ca 替换为相应的 SSL 证书文件名。

    mysql -h myinstance.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=rds-cn-north-1-ca-certificate.pem
  3. 包括 --ssl-verify-server-cert 参数以使 SSL 连接根据 SSL 证书中的终端节点验证数据库实例终端节点。例如:

    mysql -h myinstance.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=rds-cn-north-1-ca-certificate.pem --ssl-verify-server-cert
  4. 根据系统提示键入主用户密码。

您会看到类似以下内容的输出。

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 272 Server version: 5.5.5-10.0.17-MariaDB-log MariaDB Server Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql >

最大 MariaDB 连接数

允许的与 Amazon RDS MariaDB 数据库实例的最大连接数基于可用于数据库实例的数据库实例类的内存量。可用于数据库实例类的内存量越大,允许的连接数就越多。有关数据库实例类的更多信息,请参阅数据库实例类

默认情况下,数据库实例的连接限制设置为数据库实例的数据库实例类的最大数量。您可以使用数据库实例的参数组中的 max_connections 参数将并行连接的数量限制为任何值 (不得超过连接的最大数量)。有关更多信息,请参阅 使用数据库参数组

您可以通过对数据库实例执行以下查询来检索 Amazon RDS MariaDB 数据库实例允许的最大连接数:

SELECT @@max_connections;

您可以通过对数据库实例执行以下查询来检索与 Amazon RDS MariaDB 数据库实例的活动连接的数量:

SHOW STATUS WHERE `variable_name` = 'Threads_connected';

相关主题