Regular expressions are a powerful tool for developers. In this post we take a look at some basic examples of how to use regular expressions in MySQL.
We're delighted to announce the release of Vitess 20 along with version 2.13.0 of the Vitess Kubernetes Operator. Version 20 focuses on usability and maturity of existing features, and continues to build on the solid foundation of scalability and performance established in previous versions. Our commitment remains steadfast in providing a powerful, scalable, and reliable solution for your database scaling needs. What's New in Vitess 20 # Query Compatibility: enhanced DML support including improved query compatibility, Vindex hints, and extended support for various sharded update and delete operations.
Is your MySQL database running at its best? While MySQL is known for its reliability and ease of use, ensuring top-notch performance is crucial. One way to do that is through performance monitoring, an essential practice for identifying bottlenecks, maintaining optimal speed, and guaranteeing a seamless user experience. Effective monitoring not only helps in detecting […]
Replication has been the core functionality, allowing high availability in MySQL for decades already. However, you may still encounter replication errors that keep you awake at night. One of the most common and challenging to deal with starts with: “Got fatal error 1236 from source when reading data from binary log“. This blog post is […]
Flow control is not a new term, and we have already heard it a lot of times in Percona XtraDB Cluster/Galera-based environments. In very simple terms, it means the cluster node can’t keep up with the cluster write pace. The write rate is too high, or the nodes are oversaturated. Flow control helps avoid excessive […]
I vividly remember 2004 when I decided to specialize in MySQL because the year before I was homeless and living in my car. It’s been a long road and an amazing journey ever since.
A relational database is more than a data bank, it’s a profound philosophical expression. This is the second and final part of “Lessons From 20 Years Hacking MySQL”.
Yes, you read this correctly: because the MySQL client is insecure and allows running arbitrary commands, and because mysqldump blindly trusts the server it is dumping from, a hostile MySQL Server on which mysqldump is executed could trigger arbitrary command execution (also known as a remote code execution). This post raises awareness on this vulnerability and shows how a secure MySQL
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.
- You are an organization that uses RDS Aurora MySQL for its production systems, and you upgrade one minor version …
MySQL databases serve as the foundation of countless applications, powering everything from simple blogs to massive enterprise platforms. But as these applications evolve and user bases expand, MySQL performance issues tend to pop up and ensuring smooth database performance becomes crucial. Fast queries mean happy users, while sluggish performance can lead to frustration and lost […]