Showing entries 1 to 8
Displaying posts with tag: rds aurora (reset)
AWS RDS Aurora wish list

I’ve had this list on a post-it note on my monitor for all of 2022. I figured it was time to write it down, and reuse the space.

In summary, AWS suffers from the same problem that almost every other product does. It sacrifices improved security for backward compatibility of functionality. IMO this is not in the best practices of a data ecosystem that is under constant attack.

  • Storage should be encrypted by default. When you launch an RDS cluster its storage is not encrypted. This goes against their own AWS Well-Architected Framework Section 2 – Security.
  • Plain text passwords. To launch a cluster you must specify a password in plain text on the command line, again not security best practice. At least change this to using a known secret from AWS secrets manager.
  • TLS for administrative accounts should be the only option. The root user should only be REQUIRE SSL (MySQL syntax).
  • Expanding on …
[Read more]
SELECT 1

If you have worked with an RDBMS for some time, you will likely have come across the statement SELECT 1.

However, rarely is it correctly explained to engineers what the origin of SELECT 1 is, and why it’s useless and wasteful? A google search is not going to give you the response you would hope, these ranked responses are just as useless as the statement itself.

Bloat

Seeing a SELECT 1 confirms two things. First you are using a generic ORM framework, quote, and second, you have never optimized your SQL traffic patterns.

“Frameworks generally suck.
They CLAIM to improve the speed of development and abstract the need to know SQL.
The REALITY is the undocumented cost to sub-optimal performance, especially with data persistence.”

Connection Pooling

SELECT 1 comes from …

[Read more]
What does the MySQL mysqlsh util.checkForServerUpgrade() execute

During a recent Aurora MySQL 8 upgrade process, a number of validation checks have failed. This is an analysis of the error message “present in INFORMATION_SCHEMA’s INNODB_SYS_TABLES table but missing from TABLES table”.

Some background

During a Major Upgrade from Aurora MySQL 5.7 to Aurora MySQL 8.0 the cluster instances were left in an incompatible-parameters state. The upgrade-prechecks.log shed some more light on the situation with

{
            "id": "schemaInconsistencyCheck",
            "title": "Schema inconsistencies resulting from file removal or corruption",
            "status": "OK",
            "description": "Error: Following tables show signs that either table datadir directory or frm file was removed/corrupted. Please check server logs, examine datadir to detect the …
[Read more]
Upgrading to AWS Aurora MySQL 8

With Aurora MySQL 8 now generally available to all, you may want to consider the plan for an upgrade path if you would like to take advantage of the new features for your application, for example, Common Table Expressions (CTE). This new major release has a much improved and streamlined upgrade progress from Aurora MySQL 5.7.

This tutorial will provide all the steps to allow you to try out setting up an Aurora cluster and performing an upgrade without the impact on your existing AWS environment. The two pre-requisites to getting started are:

  • An AWS account. The Free 1 year AWS account provides many of the services used in these tutorials at no or little cost.
  • The awscli. See …
[Read more]
AWS Aurora MySQL 8 is now generally available

AWS has just announced the general availability of Aurora MySQL 8 compatibility (known as Aurora Version 3). This is long awaited addition to RDS MySQL 8 and provides many of the new features that can be found in the open-source MySQL 8 community version.

For those unfamiliar with Amazon Aurora my Understanding AWS RDS Aurora Capabilities presentation from Percona Live 2021 provides a great introduction of the benefits of this managed service.

There is a lot to digest and the …

[Read more]
Understanding AWS RDS Aurora Capabilities

The RDS Aurora MySQL/PostgreSQL capabilities of AWS extend the High Availability (HA) capabilities of RDS read replicas and Multi-AZ. In this presentation I discuss the different capabilities and HA configurations with RDS Aurora including:

  • RDS Aurora Cluster single instance
  • RDS Aurora Cluster multiple instances (writer + 1 or more readers)
  • RDS Aurora Cluster multi-master
  • RDS Aurora Global Cluster
  • RDS Aurora Cluster options for multi-regions

Each option has its relative merits and limitations. Each will depend on your business requirements, global needs and budget.

[Read more]
RDS/Aurora OS monitoring with Monyog v8.1.0

With this Monyog release, we will provide monitoring capabilities for RDS/Aurora OS metrics along with an emphasis on the User Experience in several respects including a number of GUI design details. Additionally, the release adds a number of bug fixes and implements a number of user requests.

Changes as compared to Monyog MySQL Monitor 8.0.4 include:

Features:

  • It is now possible to get OS metrics from Amazon RDS/Aurora (but not Azure, where interface for same is disabled).
  • Added an option to generate a token in Monyog to be used with the MONyog API as an alternative to Monyog user and password.
  • Added an option to define a “seconds_behind_master” setting in Replication page determining if the slave should be considered in sync or not. On some environments, slave will rarely be fully in sync and in such cases, the alerting was not really useful before. …
[Read more]
RDS/Aurora OS monitoring with Monyog v8.1.0

With this Monyog release, we will provide monitoring capabilities for RDS/Aurora OS metrics along with an emphasis on the User Experience in several respects including a number of GUI design details. Additionally, the release adds a number of bug fixes and implements a number of user requests.

Changes as compared to Monyog MySQL Monitor 8.0.4 include:

Features:

  • It is now possible to get OS metrics from Amazon RDS/Aurora (but not Azure, where interface for same is disabled).
  • Added an option to generate a token in Monyog to be used with the MONyog API as an alternative to Monyog user and password.
  • Added an option to define a “seconds_behind_master” setting in Replication page determining if the slave should be considered in sync or not. On some environments, slave will rarely be fully in sync and in such cases, the alerting was not really useful before. …
[Read more]
Showing entries 1 to 8