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用户应具有适当的策略和权限.授予此类权限取决于帐户持有者或授予这些权限的超级用户.
您要么使用VPC安全组或DB安全组,以决定哪些EC2实例可以打开与数据库实例的端点和端口的连接.这些连接也可以使用SSL进行.
在此方法中,您使用IAM角色和身份验证令牌.身份验证令牌生成一个唯一值,该值与访问过程中使用的IAM角色相关.这里使用相同的凭证集用于数据库以及其他aws资源,如EC2和S3等.
通过在关闭数据库实例时保存缓冲池的当前状态,然后在数据库实例启动时从保存的信息重新加载缓冲池,缓存加温可以为MariaDB数据库实例提供性能提升.这种方法绕过了缓冲池从正常数据库使用中"预热"的需要,而是使用已知常见查询的页面预加载缓冲池.
缓存升温主要提供性能优势对于使用标准存储的数据库实例.
您可以创建一个事件来定期自动转储缓冲池.例如,以下语句创建一个名为periodic_buffer_pool_dump的事件,该事件每小时转储一次缓冲池.
CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();