- 亚马逊 RDS - 主页
- Amazon RDS - 概述
- Amazon RDS - 环境
- Amazon RDS - 接口
- Amazon RDS - 数据库实例
- Amazon RDS - 数据库存储
- Amazon RDS - MS SQL 功能
- Amazon RDS - MS SQL 创建数据库
- Amazon RDS - MS SQL 连接到数据库
- Amazon RDS - MS SQL 数据库导出导入
- Amazon RDS - 使用 SSL 的 MS SQL 数据库
- Amazon RDS - MS SQL DBA 任务
- Amazon RDS - Oracle 功能
- Amazon RDS - Oracle 创建数据库
- Amazon RDS - Oracle 连接到数据库
- Amazon RDS - Oracle 数据库数据导入
- Amazon RDS - Oracle DBA 任务
- Amazon RDS - MariaDB 功能
- Amazon RDS - MariaDB 创建数据库
- Amazon RDS - MariaDB 连接到数据库
- Amazon RDS - MariaDB 数据导入
- Amazon RDS - PostgreSQL 功能
- Amazon RDS - PostgreSQL 创建数据库
- Amazon RDS - PostgreSQL 连接到数据库
- Amazon RDS - PostgreSQL 数据导入
- Amazon RDS - MySQL 功能
- Amazon RDS - MySQL 创建数据库
- Amazon RDS - MySQL 连接到数据库
- Amazon RDS - MySQL 数据库导出导入
- Amazon RDS - MySQL DBA 任务
- Amazon RDS - 多可用区部署
- Amazon RDS - 数据库快照
- Amazon RDS - 数据库监控
- Amazon RDS - 事件通知
- Amazon RDS - 数据库访问控制
Amazon RDS - MariaDB 功能
MariaDB 是一种流行的开源关系数据库,可在亚马逊 RDS 服务中使用其社区版功能。MariaDB 的几乎所有功能都可以在 RDS 平台中利用。下面简单介绍一下MariaDB在RDS平台上的主要特性。
支持的版本
10.0、10.1、10.2版本是RDS平台支持的主要版本。如果在数据库创建过程中未提及版本,则默认为当时的最新版本。下面是如何在 python SDK 程序中使用 AWS API 获取所有受支持的数据库引擎版本的示例。
import boto3
client = boto3.client('rds')
response = client.describe_db_engine_versions(
DBParameterGroupFamily='',
DefaultOnly=True,
Engine='mariadb',
EngineVersion='',
ListSupportedCharacterSets=False, #True,
)
print(response)
当我们运行上面的程序时,我们得到以下输出 -
{
"ResponseMetadata": {
"RetryAttempts": 0,
"HTTPStatusCode": 200,
"RequestId": "16179fbd-9d07-425b-9b86-cc61359ce7b4",
"HTTPHeaders": {
"x-amzn-requestid": "16179fbd-9d07-425b-9b86-cc61359ce7b4",
"date": "Fri, 14 Sep 2018 06:45:52 GMT",
"content-length": "1658",
"content-type": "text/xml"
}
},
"u'DBEngineVersions'": [
{
"u'Engine'": "mariadb",
"u'DBParameterGroupFamily'": "mariadb10.2",
"u'SupportsLogExportsToCloudwatchLogs'": true,
"u'SupportsReadReplica'": true,
"u'DBEngineDescription'": "MariaDb Community Edition",
"u'EngineVersion'": "10.2.12",
"u'DBEngineVersionDescription'": "mariadb 10.2.12",
"u'ExportableLogTypes'": [
"audit",
"error",
"general",
"slowquery"
],
"u'ValidUpgradeTarget'": [
{
"u'Engine'": "mariadb",
"u'IsMajorVersionUpgrade'": false,
"u'AutoUpgrade'": false,
"u'Description'": "MariaDB 10.2.15",
"u'EngineVersion'": "10.2.15"
}
]
}
]
}
数据库安全
RDS MariaDB 的安全性分三层进行管理。
使用 IAM
在此方法中,IAM 用户应具有适当的策略和权限。此类权限的授予由帐户持有者或授予这些权限的超级用户决定。
使用专有网络
您可以使用 VPC 安全组或数据库安全组来决定哪些 EC2 实例可以打开与数据库实例的终端节点和端口的连接。这些连接也可以使用 SSL 进行。
使用 IAM 数据库身份验证
在此方法中,您使用 IAM 角色和身份验证令牌。身份验证令牌生成与访问过程中使用的 IAM 角色相关的唯一值。这里,同一组凭证用于数据库以及其他 aws 资源,例如 EC2 和 S3 等。
缓存预热
缓存预热可以在数据库实例关闭时保存缓冲池的当前状态,然后在数据库实例启动时从保存的信息重新加载缓冲池,从而为 MariaDB 数据库实例提供性能提升。这种方法不需要缓冲池从正常数据库使用中“预热”,而是使用已知常见查询的页面预加载缓冲池。
缓存预热主要为使用标准存储的数据库实例提供性能优势。
您可以创建一个事件来定期自动转储缓冲池。例如,以下语句创建一个名为 periodical_buffer_pool_dump 的事件,该事件每小时转储一次缓冲池。
CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();