Showing entries 1 to 7
Displaying posts with tag: rds aurora (reset)
Database testing for all version changes (including minor versions)

We know that SQL statement compatibility can change with major database version upgrades and that you should adequately test for them. But what about minor version upgrades?

It is dangerous to assume that your existing SQL statements work with a minor update, especially when using an augmented version of an open-source database such as a cloud provider that may not be as transparent about all changes.

While I have always found reading the release notes an important step in architectural principles over the decades, many organizations skip over this principle and get caught off guard when there are no dedicated DBAs and architects in the engineering workforce.

Real-world examples of minor version upgrade issues

Here are two real-world situations common in the AWS RDS ecosystem using MySQL.

  1. You are an organization that uses RDS Aurora MySQL for its production systems, and you upgrade one minor version …
[Read more]
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]
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]
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 7