
- Amazon RDS - Home
- Amazon RDS - Overview
- Amazon RDS - Environment
- Amazon RDS - Interfaces
- Amazon RDS - DB Instances
- Amazon RDS - DB Storages
- Amazon RDS - MS SQL features
- Amazon RDS - MS SQL creating DB
- Amazon RDS - MS SQL Connecting to DB
- Amazon RDS - MS SQL DB Export Import
- Amazon RDS - MS SQL DB with SSL
- Amazon RDS - MS SQL DBA Tasks
- Amazon RDS - Oracle Features
- Amazon RDS - Oracle Creating DB
- Amazon RDS - Oracle Connecting to DB
- Amazon RDS - Oracle DB Data Import
- Amazon RDS - Oracle DBA Tasks
- Amazon RDS - MariaDB Features
- Amazon RDS - MariaDB Creating DB
- Amazon RDS - MariaDB Connecting to DB
- Amazon RDS - MariaDB Data Import
- Amazon RDS - PostgreSQL Features
- Amazon RDS - PostgreSQL creating DB
- Amazon RDS - PostgreSQL Connecting to DB
- Amazon RDS - PostgreSQL Data Import
- Amazon RDS - MySQL Features
- Amazon RDS - MySQL Creating DB
- Amazon RDS - MySQL Connecting to DB
- Amazon RDS - MySQL DB Export Import
- Amazon RDS - MySQL DBA Tasks
- Amazon RDS - Multi-AZ Deployments
- Amazon RDS - DB Snapshots
- Amazon RDS - DB Monitoring
- Amazon RDS - Event Notifications
- Amazon RDS - DB Access Control
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Amazon RDS - MariaDB Features
MariaDB is a popular open Source Relational DB which is available in the amazon RDS services with its community edition features. Almost every feature of MariaDB can be leveraged in the RDS platform. Below is a brief description on MariaDB's major features in the RDS platform.
Supported Versions
The versions 10.0, 10.1,10.2 are the major versions supported in the RDS platform. If no version is mentioned during the DB creation, it defaults to the most recent version at that point in time. Below is an example of how to get all supported DB Engine versions using AWS API in a python SDK program.
import boto3 client = boto3.client('rds') response = client.describe_db_engine_versions( DBParameterGroupFamily='', DefaultOnly=True, Engine='mariadb', EngineVersion='', ListSupportedCharacterSets=False, #True, ) print(response)
When we run the above program, we get the following output −
{ "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" } ] } ] }
Database Security
The security for RDS MariaDB is managed at three layers.
Using IAM
In this approach the IAM user should have appropriate policies and permissions. Granting of such permissions is decided by the account holder or the super user who grants these permissions.
Using VPC
You either use a VPC security group or DB security group to decide which EC2 instances can open connections to the endpoint and port of a DB instance. These connections can also be made using SSL.
Using IAM Database Authentication
In this approach you use a IAM role and an authentication token. The authentication token generates a unique value which is relevant to the IAM role that is used in the access process. Here the same set of credentials are used for database as well as other aws resources, like EC2 and S3 etc.
Cache Warming
Cache warming can provide performance gains for your MariaDB DB instance by saving the current state of the buffer pool when the DB instance is shut down, and then reloading the buffer pool from the saved information when the DB instance starts up. This approach bypasses the need for the buffer pool to "warm up" from normal database use and instead preloads the buffer pool with the pages for known common queries.
Cache warming primarily provides a performance benefit for DB instances that use standard storage.
You can create an event to dump the buffer pool automatically and at a regular interval. For example, the following statement creates an event named periodic_buffer_pool_dump that dumps the buffer pool every hour.
CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();