Planet for the MySQL Community

A blog aggregator for the MySQL Community/Ecosystem

A description of what this website tries to achieve is in the Planet MySQL Community - Requirements RFC.

And a clarification about the MySQL Community/Ecosystem: it is not limited the users of the MySQL Database. In the current context, it also includes people interested in MySQL Variants including MariaDB Server, Percona Server, Galera, Amazon RDS and Aurora, Google Cloud SQL for MySQL, and Azure and Alibaba flavor(s) of MySQL/MariaDB/Percona Servers.

Wednesday, 20. November 2024

Introducing scaling to 0 capacity with Amazon Aurora Serverless v2 (from AWS Database Blog)

Amazon Aurora Serverless v2 now supports scaling capacity down to 0 ACUs, enabling you to optimize costs during periods of database inactivity. Aurora Serverless is an on-demand, auto scaling configuration of Aurora that automatically adjusts your database capacity based on your workload requirements. Aurora Serverless measures database capacity in Aurora Capacity Units (ACUs) billed per [...]

MariaDB Java Connector 3.5.1 now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of the MariaDB Connector/Java 3.5.1 release. Download Now Release Notes and Changelogs … Continued [...]

Dolphie – “Rerecord not fadeaway” (from MySQL-Med)

One of the coolest features is being able to go back in time with Dolphie and analyze what was happening at a specific moment. Continue reading → [...]

Understanding MySQL DDL Space Requirements (from Another Boring Tech Blog)

pThis blog post will explore MySQL’s file storage behavior during DDL operations, particularly with InnoDB tables. Using a practical example, we’ll discuss where and how MySQL stores data during different types of DDL operations. Setting the Stage: Table Structure Consider a table sbtest1 with 30 million rows, created as follows: [crayon-673e23df4e820955217592/] This table is actively used.../p pO [...]

Building a Resilient Embedding System for Semantic Search at Airtable (from Airtable Engineering Blog)

pWhen ChatGPT burst into the public eye in 2022, a small team of engineers at Airtable started ideating on the different ways our platform could leverage this new set of capabilities. One idea kept popping up: rich, semantic search over customer data./ppImagine a marketing team asking, “Can you find past campaigns similar to this one?”, a product management team asking “can you find engineers whose [...]

Azure Database for MySQL support for MySQL 9.1 Innovation Release and MySQL 8.4 LTS - Public Preview (from Azure for MySQL Blog)

pWe are thrilled to announce the public preview of Azure Database for MySQL support for two exciting MySQL versions: MySQL 9.1 (Innovation Release) and MySQL 8.4 (LTS). These additions empower developers and database administrators with the latest MySQL features and enhancements to build, innovate, and optimize their applications on Azure./p pDuring the public preview phase, support for MySQL 9.1 ( [...]

Database Security: Best Practices to Protect Your MySQL Infrastructure (from ProxySQL Blog)

pAs of 2024, MySQL ranks as the second most popular database management system globally. MySQL has become a go-to choice for database management due to its dependable performance, stability, and open-source licensing. However, its popularity also brings significant security challenges like SQL injection attacks and unauthorized data access. As cyber threats evolve, protecting MySQL [...]/p pThe pos [...]

How Companies Can Improve Database Performance with ProxySQL (from ProxySQL Blog)

pThe efficiency of a company's database systems is not just an IT concern but a central business issue. Slow databases can drag down the entire user experience, leading to lost revenue and decreased efficiency. So, what's the secret to turbocharging database performance and staying ahead of potential bottlenecks? ProxySQL is an innovative middleware solution [...]/p pThe post How Companies Can Impr [...]

Tuesday, 19. November 2024

Newest MariaDB Enterprise Server release series reaches RC (from MariaDB Corporation Blog)

We are thrilled to introduce our newest major release of MariaDB Enterprise Server. For this release, we looked at how … Continued [...]

Using Dolphie for MySQL focus monitoring & performance tuning. (from MySQL-Med)

We can use so many different observability tools to get notifications, alerts, react, generate reports, etc. from so many different companies, using agents, proxies, repositories, and so on and so forth. And after exchanging experiences with dolphie's author himself, Charles, the idea here is to go that little bit further in monitoring MySQL. Continue reading → [...]

Long and Silent / Stressful MySQL Startup with Many Tables (from J-F Gagné's MySQL Blog)

In the last weeks / months, I have been working on understanding / improving MySQL startup with many tables.  I already wrote two posts on the subject, the links are below.  So far, I did not share what brought my attention to this, and it is the subject of this post.  Also, and because it is related, I come back to the optimization / contribution I already made on [...]

Understanding InnoDB Tablespace Duplicate Check (MySQL Startup with Many Tables) (from J-F Gagné's MySQL Blog)

This post is a little long, please bear with me as after the intro, you can skip to the essential.In the last weeks / months, I have been working on understanding / improving MySQL startup with many tables.  I already wrote three posts on the subject, they are listed below.  In this post, I focus on describing the startup phase InnoDB Tablespace Duplicate Check (Duplicate Check for [...]

Using Loki and Promtail to Display PostgreSQL Logs From a Kubernetes Cluster in PMM (from Percona Database Blog)

♦This is a follow-up to my colleagues Nickolay and Phong’s Store and Manage Logs of Percona Operator Pods with PMM and Grafana Loki and Agustin’s Turbocharging Percona Monitoring and Management With Loki’s Log-shipping Functionality blog posts. Here, I focus on making PostgreSQL database logs from a Kubernetes cluster deployed with the Percona Operator for PostgreSQL […] [...]

Ignite 2024: New innovations in Azure Database for MySQL (from Azure for MySQL Blog)

pThe Azure Database for MySQL team is thrilled to unveil a suite of new features and innovations that are designed to empower both developers and enterprise organizations with the ability to get more out of their data with robust performance and efficiency, advanced security, and greater scalability for their applications./p pWhether you're looking to leverage cutting-edge innovations, ensure high [...]

Where can you find MySQL during December 2024 - February 2025 (from The Oracle MySQL Blog)

MySQL Conferences 12/24-2/25 [...]

Postgres's missing quality of life features (from DoltHub Blog)

We are hard at work building Doltgres, the Postgres-compatible version of Dolt. Dolt is the world's first and only version-controlled SQL… [...]

Anatomy of a Throttler, part 3 (from PlanetScale Blog)

Design considerations for implementing a database throttler [...]

Monday, 18. November 2024

Amazon Aurora MySQL 3.08 (compatible with MySQL 8.0.39) is generally available (from AWS What's New)

pStarting today, Amazon Aurora MySQL-Compatible Edition 3 (with MySQL 8.0 compatibility) will support MySQL 8.0.39. In addition to several security enhancements and bug fixes, MySQL 8.0.39 contains enhancements that improve database availability when handling large number of tables and reduce InnoDB issues related to redo logging, and index handling.br br Aurora MySQL 3.08 also includes multiple av [...]

My “PostgreSQL” story (PostgreSQL, Streaming Replication, Yugabyte, PGD, CockroachDB & StandbyMP story) (from MySQL-Med)

Learning how to evaluate PostgreSQL Streaming Replication, Yugabyte, PGD, CockroachDB & StandbyMP for highly available solutions. Continue reading → [...]

Amazon Aurora MySQL now supports R7i instances (from AWS What's New)

pAmazon Aurora with MySQL compatibility now supports R7i database instances powered by custom 4th Generation Intel Xeon Scalable processors. R7i instances offer larger instance sizes, up to 48xlarge and features an 8:1 ratio of memory to vCPU, and the latest DDR5 memory. These instances are now available in the following AWS Regions: US East (N. Virginia, Ohio), US West (N. California, Oregon), Asi [...]

Unleashing Query Power: Advanced Multi-Column Index Optimization in TiDB (from PingCAP Blog)

pIn today’s data-driven world, efficiently handling complex queries on large datasets is critical to keeping applications responsive and performant. For TiDB, a distributed SQL database designed to manage high-scale, high-demand environments, optimizing data access paths is essential to delivering smooth, efficient queries. This post dives into TiDB’s advanced approach to optimizing multi-column in [...]

Ensuring High Availability and Fault Tolerance for Business-Critical Workloads (from Continuent Blog)

In the current MySQL ecosystem, organizations must focus on high availability and fault tolerance to ensure business continuity and maintain customer trust. A recent inquiry to prominent tech executives identified five key themes for achieving this: multi-region deployment to prevent single points of failure, automated self-healing for quick issue resolution, redundancy through system duplication, [...]

MySQL 8 utf8mb4_0900_ai_ci collation confusion (from Kedar MySQL Blog)

pRecently I was asked a question: Why am I getting utf8mb4_0900_ai_ci as the default collation in MySQL 8, despite setting the server to use utf8mb4_general_ci? With the upgrade to MySQL…/p The post MySQL 8 utf8mb4_0900_ai_ci collation confusion first appeared on Change Is Inevitable. [...]

Enhancing Security and Compliance in Financial Services with MySQL Enterprise Edition (from The Oracle MySQL Blog)

This blog highlights how MySQL Enterprise Edition helps financial services companies enhance security and comply with regulations. [...]

SQL Calculations #1 (from MacLochlainns Weblog)

This was principally written for my SQL students but I thought it might be useful to others. SQL calculation are performed row-by-row in the SELECT-list. In its simplest form without even touching a table, you can add two literal numbers like this: SELECT 2 + 2 AS result; It will display the result of the […] [...]

JSON Showdown: Dolt vs Sqlite (from DoltHub Blog)

Dolt was created to be the world's first truly version controlled database. We think it does a great job at that. And in the process of… [...]

Friday, 15. November 2024

Unlocking Modern SaaS Platforms: How Distributed SQL Delivers Multi-Tenancy at Scale (from PingCAP Blog)

pAt HTAP Summit 2024, Dave Burgess, an industry veteran, angel investor, and ex-VP of Data Engineering at Pinterest, walked through why distributed SQL has emerged as a key component of modern SaaS platforms. As Burgess explained during his keynote, traditional databases like MySQL and PostgreSQL may serve startups initially. However, as businesses scale and encounter […]/p pThe post Unlockin [...]

MariaDB Python Connector 1.1.11 now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of the MariaDB Connector/Python 1.1.11 release. Download Now Release Notes MariaDB Connector/Python … Continued [...]

Protect your data with MariaDB Server and Intel® TDX (from MariaDB Foundation Blog)

pIn 2023, Intel launched Intel® Trust Domain Extensions (Intel® TDX), their latest Confidential Computing technology that ensures data in use protection for hardware-isolated virtual machines and verified hardware and software integrity through attestation. … /p pContinue reading \"Protect your data with MariaDB Server and Intel® TDX\"/p pThe post Protect your data with MariaDB Serv [...]

How to Change a Table Name in MySQL in Different Ways (from Devart MySQL Tool Blog)

pRename table operations are common. When business situations and business requirements change, it becomes necessary to change the name of tables in MySQL databases. This article will explore various methods of renaming MySQL tables and essential related issues./p pThe post How to Change a Table Name in MySQL in Different Ways appeared first on Devart Blog./p [...]

FOSDEM 2025 MySQL Devroom – Selection Committee (from FOSDEM MySQL & Friends Devroom)

Now that the call for participation is open, let me present the selection committee members that will read, evaluate, and rate your submissions. Committee members are responsible for evaluating and scoring proposals.They must also consider certain constraints, such as that the project must be open source, and that the session must be technical and in […] [...]

Thursday, 14. November 2024

MariaDB ODBC Connector 3.2.4 now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of the MariaDB Connector/ODBC 3.2.4 release. Download Now Release Notes MariaDB Connector/ODBC … Continued [...]

Cave adminem (from The consistent voice)

♦pSecuring access to a MariaDB database is essential to protect sensitive data and maintain system integrity. Basic security measures like enforcing strong passwords help prevent unauthorized access, while ensures that data is encrypted during transmission. By combining these practices with regular updates and access control, you can significantly reduce the risk of security breaches. utilizing TLS [...]

Understanding Latency Through a 100m Race: From CPU to NVMe (from Another Boring Tech Blog)

pIn the world of computing, latency is everything. Whether you’re optimizing a database query or fine-tuning a high-performance application, understanding how quickly different components of your system respond can make or break performance. But let’s put these abstract nanoseconds and microseconds into a more relatable scenario—a 100m sprint race. 🏃‍♂️🏃‍♀️ The Runners in the Race.../p pO post Unde [...]

Exploring Kubernetes CPU Resources in View of Percona XtraDB Cluster’s Flow Control (from Percona Database Blog)

♦Even though I used a dedicated Kubernetes cluster to host my test database, I had this belief that by not explicitly allocating (or requesting, in Kubernetes vocabulary) CPU resources to my Percona XtraDB Cluster (PXC) pods or yet making just a small request, Kubernetes could be delaying access to the free CPU cycles available on […] [...]

Podcast: Duplicate Indexes in MySQL (from Kedar MySQL Blog)

pIn this podcast, we’ll explore the issue of duplicate indexes in MySQL; including redundant index, foreign keys, left-prefixed secondary index /w primary key, and how to tackle the issue at…/p The post Podcast: Duplicate Indexes in MySQL first appeared on Change Is Inevitable. [...]

Galera Manager November 2024 Release (from Galera Blog)

Codership is pleased to announce a new release of Galera Manager. The current installer stands at version 1.14.0 (you can check this by typing: ./gm-installer version which will report gm-installer version 1.14.0 (linux/amd64)) and the actual Galera Manager GUI is at version 1.8.7. Users will notice usability improvements, and fixes for issues filed at the […] [...]

MySQL Replication Monitoring : Enhanced Features for the Enterprise Edition (from The Oracle MySQL Blog)

The latest update to MySQL Enterprise edition, version 9.1, introduces significant enhancements focused on replication monitoring. This update includes improvements to Group Replication Flow Control and the replication applier, providing users with better visibility and control over their replication performance, leading to potential long-term cost savings by ensuring efficient usage of their machi [...]

Wednesday, 13. November 2024

Some InnoDB Cluster troubleshooting commands (from MySQL-Med)

A quick overview of some commands to ensure you can handle your InnoDB Cluster when things get difficult. Continue reading → [...]

Enhancements to MariaDB Logical Dump and Import Tools in Release Series 11.5/11.6 (from MariaDB Corporation Blog)

In this post, we’ll explore the enhancements made to MariaDB’s backup and restore tools, mariadb-dump and mariadb-import, implemented in MDEV-33635 … Continued [...]

Amazon RDS for MySQL supports new minor version 8.0.40 (from AWS What's New)

pAmazon Relational Database Service (Amazon RDS) for MySQL now supports MySQL minor version 8.0.40. We recommend that you upgrade to the latest minor versions to fix known security vulnerabilities in prior versions of MySQL, and to benefit from the bug fixes, performance improvements, and new functionality added by the MySQL community. Learn more about the enhancements in RDS for MySQL 8.0.40 in th [...]

BSE (Bombay Stock Exchange) Processes Billions of Transactions Daily with MySQL Enterprise Edition (from The Oracle MySQL Blog)

BSE leverages MySQL Enterprise Edition for processing 150 million trades and 5 billion orders per day. [...]

Tuesday, 12. November 2024

MariaDB C Connector 3.4.3, 3.3.13, and 3.1.26 now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of MariaDB Connector/C 3.4.3, 3.3.13, and 3.1.26. Download Now Release Notes and … Continued [...]

Jemalloc install & config for MySQL (from MySQL-Med)

Have a look into how to deploy jemalloc and install, configure & test for your MySQL Server. Continue reading → [...]

Difference Between WAL Files and Transaction Logs in PostgreSQL (from MinervaDB Blog)

pUnderstanding the Difference Between WAL Files and Transaction Logs in PostgreSQL In PostgreSQL, two key components that are frequently discussed in relation to database management and performance are the transaction log and the WAL (Write-Ahead [...]/p pThe post Difference Between WAL Files and Transaction Logs in PostgreSQL appeared first on The WebScale Database Infrastructure Operations Expert [...]

Boosting Profitability in Financial Services with MySQL (from The Oracle MySQL Blog)

MySQL not only helps financial institutions bolster their profitability but also equips them to thrive in a rapidly changing market. Embracing MySQL is a strategic move for any financial services organization looking to secure its future in a digital-first world. Read the full blog. [...]

Grouping and Aggregations on Vitess (from Vitess)

I love my job. One of the best feelings is when I find an interesting paper and use it to solve a real problem. It feels like I found a cheat code. Instead of having to do a lot of hard thinking, I can just stand on the shoulders of really big people and take a shortcut. Here, I want to share a recent project that I could solve using a public paper. [...]

Monday, 11. November 2024

Faster MySQL Startup with Many Tables (1M+) (from J-F Gagné's MySQL Blog)

I have been scratching my head about MySQL startup for some time.  There is much to say about this, and many other posts will probably follow.  For now, it is enough to know that with many tables (millions) the startup of MySQL 8.0+ (including 8.0, 8.4 and 9.0) is suboptimal (to say the least).  With very little changes, I was able to speed it up, from 2:39 to 1:09 (1 minute and 9 [...]

7-point checklist to conquer MySQL 5.7 to 8.0 upgrade challenges (from Azure for MySQL Blog)

pWith the ever-increasing pace of technology, it’s easy to miss out on database end-of-life (EOL) dates, especially in complex multi-database environments. This is especially the case with MySQL 5.7, which reached end-of-life status in October 2023./p pDatabases based on the older versions like MySQL 5.7, after they stop receiving security updates, can have bugs and security vulnerabilities that pu [...]

Evolution of Histograms in MySQL 8.4: From Manual to Automated Performance Optimization (from Mydbops Blog)

Explore the evolution of histograms in MySQL and how MySQL 8.4's automated updates improve query optimization and performance. [...]

Release and version management is hard (from Daniël's Database Blog)

pIn this post I will talk about release management with MySQL as example. Release management has to do with what to put in a release, how often to do a release, how to long to support a release and how to number or name the releases./p The early years pToday software is almost exclusively delivered over the internet, but this didn’t use to be the case. Software used to be delivered in a box that yo [...]

Saturday, 09. November 2024

Managing SQL Drift: Ensuring Stability in Database Transitions (from Ronald Bradford Blog)

SQL drift is a significant challenge that occurs when SQL statements from an existing system produce unexpected results after migration to a new environment or system. These issues manifest in several critical ways: SQL statements may generate new execution errors, experience significant performance degradation, or yield differences in data integrity. Such challenges extend beyond simple […] [...]

Fixing some of the InnoDB scan perf regressions in a MySQL fork (from Small Datum)

pI recently learned of Advanced MySQL, a MySQL fork, and ran my sysbench benchmarks for it. It fixed some, but not all, of the regressions for write heavy workloads that landed in InnoDB after MySQL 8.0.28.brbrIn response to my results, the project lead filed a bug for performance regressions and then quickly came up with a diff. The bug in this case is for regressions that are most obvious during [...]

RocksDB benchmarks: large server, leveled compaction (from Small Datum)

pI recently shared benchmark results for RocksDB a few weeks ago for both leveled and universal compaction on a small server. This post has results from a large server with leveled compaction. /pptl;dr/pp/pullithere are a few regressions from bug 12038/liliQPS for overwrite is ~1.5X to ~2X better in 9.x than 6.0 (ignoring bug 12038)/liliotherwise QPS in 9.x is similar to 6.x/li/ulp/ppHardware/ [...]

Efficient MySQL Performance In 10 Sentences (from Hack MySQL)

pDon’t have time to read Efficient MySQL Performance? Here’s the book (10 chapters) in one-liners./p ol liPerformance is query response time./li liProper left-most indexing is required for performance./li liThe less data, the better./li liAccess patterns (part of the workload) help or hinder performance./li liSharding is how to scale writes when single-node performance is truly reached. [...]

RocksDB benchmarks: small server, leveled compaction (from Small Datum)

pI shared benchmark results for RocksDB a few weeks ago and there was a suggestion for me to repeat tests using different (older) values for format_version. Then while replacing a failed SSD, I also updated the OS and changed a few kernel-related config options. Thus, I ended up repeating all tests.brbrThis post has results from a small server with leveled compaction. Results from a large server an [...]

Friday, 08. November 2024

Storing the MySQL Data Dictionary in a 3rd-Party Storage Engine (from Laurynas Biveinis' blog)

pMySQL 8.0 replaced legacy codeFRM/code files with a transactional data dictionary, stored in InnoDB. Here I'll describe how any other storage engine could become the DDSE, that is, serve as the backend for the data dictionary, replacing InnoDB. This is purely an internals post, and will not look into user-facing motivations and implications of the change (which can be found here), now will it disc [...]

How to Connect PHP With MySQL (from Devart MySQL Tool Blog)

pRead on to learn about how to connect PHP with a MySQL database using different methods, including mysqli, PDO, and dbForge for MySQL. /p pThe post How to Connect PHP With MySQL appeared first on Devart Blog./p [...]

Implementing a Tamper-Proof Ledger in PostgreSQL (from MinervaDB Blog)

pImplementing a Tamper-Proof Ledger in PostgreSQL for Auditable and Secure Data Storage In PostgreSQL, a ledger refers to a specialized database structure or extension designed to provide immutable, auditable, and secure data storage. This structure [...]/p pThe post Implementing a Tamper-Proof Ledger in PostgreSQL appeared first on The WebScale Database Infrastructure Operations Experts in Postgre [...]

Thursday, 07. November 2024

Enforcing strong passwords for MariaDB users (from Vettabase)

MariaDB users normally connect using a password. Weak passwords are a common security problem, especially when passwords are generated by humans. However, MariaDB comes with plugins that help validating passwords to make sure they are strong enough. This article is a practical overview of MariaDB password validation plugins. Managing password validation plugins Password validation plugins are just [...]

Introducing sharding on PlanetScale with workflows (from PlanetScale Blog)

Run Vitess workflows right from within PlanetScale. Migrate data from unsharded to sharded keyspaces, manage traffic cutover, and easily revert when problems arise. [...]

Wednesday, 06. November 2024

Isolation level violation testing and debugging in MariaDB (from MariaDB Corporation Blog)

Isolation is one of key transaction properties in database systems (the I in ACID), and its violation is a serious … Continued [...]

An Elephant in the Cluster: Making PostgreSQL Feel at Home on Kubernetes (from Percona Database Blog)

♦TL;DR Kubernetes was built for stateless apps, but as more stateful applications (like databases) run on it, operators include quite heavy implementations to Kubernetes workload management API (such as StatefulSets) deficits. While creating custom methods allows flexibility and faster time to market, it also leads to inconsistency and complexity. In this blog, I want to […] [...]

MySQL Podcast – Practical Learning & Training (from Kedar MySQL Blog)

pHello, readers! I’m excited to announce the launch of my latest project: a dedicated MySQL Podcast! As a long-time MySQL enthusiast with extensive hands-on experience in database management, I understand…/p The post MySQL Podcast – Practical Learning & Training first appeared on Change Is Inevitable. [...]

Top MySQL Hosting Providers in 2024 for Reliable Database Management (from Devart MySQL Tool Blog)

pCloud-based database hosting seems to be an extremely viable solution for modern apps. After all, the entire management-and-maintenance thing is relegated to the hosting provider, scalability is not an issue, and you are free to focus on product development as you see fit./p pThe post Top MySQL Hosting Providers in 2024 for Reliable Database Management appeared first on Devart Blog./p [...]

RocksDB on a big server: LRU vs hyperclock (from Small Datum)

pThis has benchmark results for RocksDB using a big (48-core) server. I ran tests to document the impact of the the block cache type (LRU vs hyperclock) and a few other configuration choices for a CPU-bound workload. A previous post with great results for the hyperclock block cache is here./pptl;dr/pulliread QPS is up to ~3X better with auto_hyper_clock_cache vs LRU/liliread QPS is up to ~1.3X bett [...]

Tuesday, 05. November 2024

Exploring the MySQL Server System Variables and SET Statements (from The Oracle MySQL Blog)

MySQL system variables configure the server's operation, and the SET statement is used to change system variable. The MySQL SET statements have various options for specifying changes to SYSTEM VARIABLE. It’s important to understand how these changes are reflected in current sessions (connections), later sessions, and after database server restarts. [...]

Get Some REST With The Tungsten API (from Continuent Blog)

Standards allow modern systems to advance, and the REST specification is one very important example. Since this post is about the Tungsten API in specific, let me simply say this - a RESTful API adheres to six principles: Client-server, stateless, cacheable, uniform interface, layered system and optionally code on demand. As part of the watchability/monitoring goal, our software as of version 7.0.0 [...]

MMQ : MariaDB (as a) Messsage Queue (from The consistent voice)

MMQ : MariaDB (as a) Messsage Queuesee Addendum/erratum at the end of the storypLet’s practice a theoritical architectural exercise here./ppWhen faced with the challenge of building an internal asynchronous message queue system without introducing new dependencies, leveraging MariaDB can be an effective solution. Thanks to its robust set of features and rich history, MariaDB is well-suited for this [...]

Multi-Source Replication From Dolt to MySQL (from DoltHub Blog)

One of MySQL's greatest features is its robust replication support. MySQL replication provides scalability, reliability, and high… [...]

Optimizing query planning in Vitess: a step-by-step approach (from Vitess)

Introduction # In this blog post, we will discuss an example of a change to the Vitess query planner and how it enhances the optimization process. The new model focuses on making every step in the optimization pipeline a runnable plan. This approach offers several benefits, including simpler understanding and reasoning, ease of testing, and the ability to use arbitrary expressions in ordering, grou [...]

Monday, 04. November 2024

Adding an Invisible Primary Key to an Existing Table in MySQL (from Another Boring Tech Blog)

pWith MySQL 8.0.23, the concept of invisible columns was introduced. Columns marked as invisible do not appear in standard [crayon-673e23df4f9d7838014798-i/]  queries and don’t require changes to existing application code. Later, in MySQL 8.0.30, support for automatically generated invisible primary keys (GIPKs) was added for InnoDB tables created without an explicit primary key. This enhancement, [...]

RocksDB benchmarks: small server, universal compaction (from Small Datum)

pI shared benchmark results for RocksDB a few weeks ago using leveled compaction and a small server. Here I have results for universal compaction and the same small server./ptl;drulliin general the there are some improvements and some small regressions with one exception (see  bug 12038)/lilifor a cached database/liulliFrom RocksDB 6.0.2 to 9.x QPS drops by ~10% for fillseq and [...]

Let’s go physical(ly separated) (from The consistent voice)

♦pIn my previous article , we discussed best practices for securing and monitoring admin access, such as role-based access controls (RBAC). It’s a good time to have a quick reminder about AAA aka “ Authentication, Authorization and Accounting” , which is a framework designed to manage access to networked resources and ensure secure, controlled interactions :/polliAuthentication : Verifies the ident [...]

MySQL Change Buffer – What When and FAQ (from Kedar MySQL Blog)

pIn the world of database management, efficiency is key. MySQL’s change buffer is a powerful feature that helps optimize how secondary index changes are managed. The idea of introducing a…/p The post MySQL Change Buffer – What When and FAQ first appeared on Change Is Inevitable. [...]

WePay's Journey to Enhanced Database Performance with MySQL Enterprise Edition (from The Oracle MySQL Blog)

WePay, the integrated payments arm of JPMorgan Chase, has taken significant strides to enhance its database infrastructure by upgrading to MySQL Enterprise Edition. For businesses looking to optimize their payment infrastructure, the journey of WePay serves as an insightful case study on leveraging advanced database solutions for maximum uptime and security. [...]

Exposing PostgreSQL with NGINX Ingress Controller (from Percona Database Blog)

♦I wrote a blog post in the past about a generic approach on how to expose databases in Kubernetes with Ingress controllers. Today, we will dive deeper into PostgreSQL with ingress and also review two different ways that can be taken to expose the TCP service. The goal is to expose multiple PostgreSQL clusters through […] [...]

MariaDB 11.4.4, 11.2.6, 10.11.10, 10.6.20 and 10.5.27 now available (from MariaDB Foundation Blog)

pThe MariaDB Foundation is pleased to announce the availability of MariaDB 11.4.4, MariaDB 10.11.10, MariaDB 10.6.20 and MariaDB 10.5.27, the latest stable releases in their respective long-term series (maintained for five years from their first stable release dates), as well as MariaDB 11.2.6 the latest and final scheduled release in the 11.2 short-term series (maintained for one year)br See the r [...]

Embracing Distributed SQL to Drive AI-Readiness in Banking: A Q&A from SACCC 2024 (from PingCAP Blog)

pFinancial services are rapidly transforming to adopt AI, digitize operations, and enhance customer experiences, yet many banks struggle with outdated legacy data systems that limit AI adoption.  At the Silverlake Axis Customer Connect Conference (SACCC), held from October 17 to 20, 2024, in Da Nang, Vietnam, industry leaders focused on modernizing banking infrastructure. C-suite executives, [ [...]

An Ooey GUI Guide to Using Dolt (from DoltHub Blog)

Dolt is inspired by Git and MySQL, two deeply command-line oriented software programs. Thus, Dolt started as a command line utility… [...]

Sunday, 03. November 2024

GenAI chatbot with Laravel, Redis, OpenAI, and LLPhant (from MORTENSI)

pGenAI chatbots help improve the user experience of the visitors to your website. Using natural language, you can connect users with your products, services, documentation, and FAQs and simulate the interactivity of a human operator (kind of). Either choose a third-party service or develop your own; nowadays, you are a few clicks away from offering […]/p pThe post GenAI chatbot with Laravel, [...]

Saturday, 02. November 2024

Celebrating 15 years of MariaDB (from Monty says)

pIt is 15 years since the first MariaDB server release of MariaDB 5.1.38 on 29'th of October 2009./ppMariaDB got its name from my youngest daughter Maria, following the tradition of MySQL, who got its name from my oldest daughter My./ppThe MariaDB project started on April 20 2009, the same day when Oracle announced that Oracle will buy Sun Microsystems, who owned MySQL. The initial MariaDB engineer [...]

Friday, 01. November 2024

MariaDB Community Server Q4 2024 maintenance releases (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of MariaDB Community Server 11.4.4, 11.2.6, 10.11.10, 10.6.20, and 10.5.27 maintenance releases. … Continued [...]

Too many performance regressions for InnoDB in MySQL 8.0.29 and 8.0.30 (from Small Datum)

There are many changes to InnoDB in MySQL 8.0.29 and 8.0.30. And many changes increases the chance of performance regressions. A recent report on this from me is here. In the worst-case the throughput drops almost in half for the update-index microbenchmark. This blog post identifies the diff that causes the regression.brtl;drullithis diff causes the update-index regression. The diff adds support f [...]

MySQL 8.0.40 does not fix the regressions I hoped it would fix (from Small Datum)

pPerformance regressions arrived in InnoDB with MySQL 8.0.30. Eventually multiple bugs were filed. The worst regressions were from changes to the hash function (perhaps fixed in 8.0.36) and from changes to how functions are inlined for InnoDB (bug 111538). The problems are obvious if you run CPU-bound workloads, and my CPU-bound workload is sysbench with a cached database./ppBug 111538 is now close [...]

Trying out Advanced MySQL (from Small Datum)

pI recently learned of the Advanced MySQL project on github via a tweet. There is a book and a repo for an enhanced version of 8.0.40. I wish I had the time to read some of that book and learn more about the enhancements but for now I just ran my sysbench tests for it on a few large servers. Hopefully I will also run the Insert Benchmark for it on the same servers./pptl;dr/pp/pulliAdvanced MySQL is [...]

How Can MySQL Catch Up with PostgreSQL’s Momentum? (from Percona Database Blog)

♦When I talk to old-timers in the MySQL community, I often hear this question: “How come MySQL is so awesome and still more popular than PostgreSQL (according to DB-Engines methodology at least), but it is losing ground while PostgreSQL’s growth in popularity has been unstoppable?” Can anything be done in the MySQL ecosystem to reverse […] [...]

Use Dolt With MySQL Connector in Python (from DoltHub Blog)

Dolt is a version controlled MySQL compatible database. It means you can commit, diff and merge along with other Git-like version control… [...]

Thursday, 31. October 2024

How Dafiti migrated its most critical database to Amazon Aurora MySQL with minimal downtime and improved operational efficiency (from AWS Database Blog)

In the dynamic world of digital retail, performance, resilience, and availability are not only desirable qualities, they are essential. Recently, Dafiti, a leading fashion and lifestyle ecommerce conglomerate operating in Brazil, Argentina, Chile, and Colombia, undertook a significant transformation of its critical database infrastructure by migrating from self-managed MySQL Server 5.7 on Amazon EC [...]

Celebrating 15 years of innovation (from MariaDB Foundation Blog)

pWe have been in festive mode this week, celebrating fifteen years of MariaDB. You may have seen our very own Ian Gilfillan’s blog MariaDB Server turns fifteen! … /p pContinue reading \"Celebrating 15 years of innovation\"/p pThe post Celebrating 15 years of innovation appeared first on MariaDB.org./p [...]

Amazon Aurora supports rolling upgrades for Operating System upgrades (from AWS What's New)

pAmazon Aurora announced rolling upgrades support for Operating System (OS) upgrades. Aurora now seamlessly upgrades the OS version of Aurora database clusters while maintaining read access to the data when using Aurora cluster or reader endpoint. The feature automatically applies upgrades to a few reader instances at a time so the database can continue serving read traffic for clusters with more t [...]

Tracking Dual Passwords in MySQL (from Percona Database Blog)

♦We already have blog posts about Dual Password in MySQL from Brian Sumpter – Using MySQL 8 Dual Passwords, and from Marco Tusa – MySQL Dual Passwords – How To Manage Them Programmatically Let’s skip the details about dual passwords and focus on tracking password usage. How can we be sure that we are using […] [...]

New JSON format for EXPLAIN (from The Oracle MySQL Blog)

MySQL 8.3 introduced a new JSON format for EXPLAIN reflecting how the execution plan actually is built, allowing for programmatic analysis of plans and executions. [...]

Enhancing MySQL Security: Data-at-Rest Encryption with the Keyring Plugin (from Vettabase)

In this article, we'll explain why encrypting tablespaces and binary logs in MySQL is so important. Do expect step-by-step guidelines and practical examples demonstrating common risks coming with non-encryption. [...]

Support for large transactions in Galera: Taking Streaming Replication for a spin (from Galera Blog)

We have documented streaming replication, and we have also mentioned how you can use streaming replication, and we also once did a webinar with recording on it, and we wrote a very in-depth blog post on how to use streaming replication to manage large transactions with Galera Cluster. However, we had a question recently about […] [...]

Sleuthing resource leaks in Dolt (from DoltHub Blog)

Recently, users running SQL queries against their databases hosted on DoltHub has led us to uncovering some really interesting bugs in Dolt… [...]

Wednesday, 30. October 2024

Celebrating 15 years of MariaDB Server (from MariaDB Corporation Blog)

It is now 15 years since the first MariaDB Server release of MariaDB 5.1.38 on 29’th of October 2009. The … Continued [...]

Celebrating the GitHub Awards 2024 recipients 🎉 (from The GitHub Blog)

pThe GitHub Awards celebrates the outstanding contributions and achievements in the developer community by honoring individuals, projects, and organizations for creating an outsized positive impact on the community./p pThe post Celebrating the GitHub Awards 2024 recipients 🎉 appeared first on The GitHub Blog./p [...]

Using the MySQL “SET ROLE” to Enforce “Least Privilege” Principles (from The Oracle MySQL Blog)

How using SET ROLE can be used to define a “Least Privilege” model for accessing database objects based on a user’s current task. [...]

Tuesday, 29. October 2024

Performance testing MySQL migration environments using query playback and traffic mirroring – Part 3 (from AWS Database Blog)

This is the third post in a series where we dive deep into performance testing of MySQL environments being migrated from on premises. In Part 1, we compared the query playback and traffic mirroring approaches at a high level. In Part 2, we showed how to set up and configure query playback. In this post, we show you how to set up and configure traffic mirroring. [...]

Performance testing MySQL migration environments using query playback and traffic mirroring – Part 2 (from AWS Database Blog)

This is the second post in a series where we dive deep into performance testing MySQL environments being migrated from on premises. In Part 1, we compared the query playback and traffic mirroring approaches at a high level. In this post, we dive into the setup and configuration of query playback. [...]

Performance testing MySQL migration environments using query playback and traffic mirroring – Part 1 (from AWS Database Blog)

In this series of posts, we dive deep into performance testing of MySQL environments being migrated from on-premises to AWS. In this post, we review two different approaches to testing migrated environments with traffic that is representative of real production traffic: capturing and replaying traffic using a playback application, and mirroring traffic as it comes in using a proxy. This means you’r [...]

What’s Next for SQL @ Scale? TiDB’s Vision to Evolve Growing Businesses (from PingCAP Blog)

pScaling database systems remains one of the biggest challenges facing growing companies modernizing IT infrastructure. Max Liu, Co-Founder and CEO of PingCAP, discussed these critical scaling challenges during his opening keynote, “What’s Next for SQL @ Scale,” at HTAP Summit 2024. Drawing from real-world examples and industry insights, Liu explored how TiDB addresses the limitations […]/p p [...]

MariaDB Server turns fifteen! (from MariaDB Foundation Blog)

pFifteen years ago, Internet Explorer made up about two-thirds of all browsers, Firefox the majority of the rest, while a newly-released browser called Chrome was starting to appear in the rankings. … /p pContinue reading \"MariaDB Server turns fifteen!\"/p pThe post MariaDB Server turns fifteen! appeared first on MariaDB.org./p [...]

Use HammerDB to run performance tests on Amazon RDS for Db2 (from AWS Database Blog)

To ensure that you properly size your Amazon RDS for Db2 instances and achieve comparable or better performance than your on-premises systems, you can use HammerDB. By using this tool, you can generate OLTP-type workloads using TPC-C tests, enabling you to compare performance between your on-premises Db2 and Amazon RDS for Db2 systems. This post guides you through running HammerDB tests on RDS for [...]

Amazon RDS for PostgreSQL, MySQL, and MariaDB now supports M7i and R7i database instances (from AWS What's New)

pAmazon Relational Database Service (Amazon RDS) for PostgreSQL, MySQL, and MariaDB now supports M7i and R7i database (DB) instances. M7i and R7i are the latest Intel based offering and are available with a new maximum instance size of 48xlarge, which brings 50% more vCPU and memory than the maximum size of M6i and R6i instance types.br br M7i and R7i DB instances are available for Amazon RDS for P [...]

preFOSDEM MySQL Belgian Days 2025 – save the dates (from lefred's blog)

As announced yesterday, the MySQL Devroom is back at FOSDEM! For people preparing for their travel to Belgium, we want to announce that the MySQL Belgian Days fringe event will be held on the Thursday and Friday before FOSDEM. This event will take place on January 30th and 31st, 2025, in Brussels at the usual […] [...]

preFOSDEM MySQL Belgian Days 2025 - save the dates (from The Oracle MySQL Blog)

For people to prepare for their travel to Belgium, we want to announce that the preFOSDEM fringe event known as the MySQL Belgian Days will take place the Thursday and Friday, January 30 and 31, before FOSDEM. [...]

MariaDB Server Turns 15! Here Are 15 Reasons Why Developers and DBAs Love It (from MariaDB Corporation Blog)

October 29, 2009 was a special day in the database community—it saw the first release of MariaDB Server. Started as … Continued [...]

Announcing Vitess 21 (from PlanetScale Blog)

Vitess 21 is now generally available. [...]

Announcing Vitess 21 (from Vitess)

Announcing Vitess 21 # We're delighted to announce the release of Vitess 21 along with version 2.14.0 of the Vitess Kubernetes Operator. Version 21 focuses on enhancing query compatibility, improving cluster management, and expanding VReplication capabilities, with experimental support for atomic distributed transactions and recursive CTEs. Key features include reference table materialization, mult [...]

Monday, 28. October 2024

FLUSH_PRIVILEGES: A new dynamic privilege to execute FLUSH PRIVILEGES (from The Oracle MySQL Blog)

MySQL 8.4 introduces a new privilege, FLUSH_PRIVILEGES, which allows database users to execute FLUSH PRIVILEGES statement without the need of RELOAD privilege. [...]

How to use passkeys to authenticate to MySQL (from The Oracle MySQL Blog)

MySQL 9.1 adds support for Windows Hello. And this supports passkeys stored on the OS store. Check how to set up and use one of these instead of the hardware based FIDO2 devices [...]

The MySQL Hypergraph Optimizer Now Available in HeatWave MySQL (from The Oracle MySQL Blog)

Starting with MySQL 9.0, users of HeatWave MySQL can now try the new hypergraph optimizer. Read on to learn how to enable the hypergraph optimizer, and to understand what it means for your query plans. [...]

Impressed by Disabling InnoDB Redo Logging for Creating Tables as Fast as Possible (from J-F Gagné's MySQL Blog)

In the last weeks / months, I have been working on understanding / improving MySQL startup with many tables.  I already wrote a post about my work (Faster MySQL Startup with Many Tables).  In that post, I link to a bug report (Bug #115988 : Too Much Disk Read on Startup, penalizing deployments with many tables).  In that bug report, I write, without much details, that the [...]

MariaDB for SQL Server DBA (from MinervaDB Blog)

pMariaDB for SQL Server DBA - How do you configure MariaDB for Transaction Log Backup? While MariaDB does not offer a native transaction log backup feature comparable to Microsoft SQL Server, it provides an equivalent [...]/p pThe post MariaDB for SQL Server DBA appeared first on The WebScale Database Infrastructure Operations Experts in PostgreSQL, MySQL, MariaDB, MongoDB and ClickHouse./p [...]

Abandonware in Popular Open Source Databases (from Percona Database Blog)

♦Inspired by this comment in the Hacker News discussion, I posted polls on my LinkedIn network about the tendency (or perception of tendency) to abandon features without deprecating them in some of the most popular open source databases – MySQL, MariaDB, and PostgreSQL.  First, let’s look at why “Abandoning” features rather than formally depreciating them […] [...]

MySQL NDB Cluster 8.4 - What's new (from The Oracle MySQL Blog)

The MySQL NDB Cluster Development team is quite happy to announce that MySQL NDB Cluster 8.4 (LTS) is available for download. This release includes new features made available before under Innovation Releases - 8.1, 8.2 and 8.3 - and new features made available in 8.4. [...]

MySQL Connector/J Observability with OpenTelemetry (from The Oracle MySQL Blog)

The OpenTelemetry project is an open-source, vendor-neutral observability framework, providing a common observability standard. It enables users to instrument their applications in order to export observability data: traces, metrics, and logs, enabling increased granularity of debugging and testing. MySQL Connector/J now supports producing observability data, baked into the driver code, offering a [...]

FOSDEM 2025 MySQL Devroom - call for participation (from The Oracle MySQL Blog)

This is the call for participation for the FOSDEM 2025 MySQL Devroom [...]

FOSDEM 2025 MySQL Devroom – call for participation (from FOSDEM MySQL & Friends Devroom)

We are pleased to announce the Call for Participation (CfP) for the FOSDEM 2025 MySQL Devroom. The Devroom will be held on February 2 (Sunday), 2025 in Brussels, Belgium. The submission deadline for talk proposals is December 1, 2024. FOSDEM is a free event for software developers to meet, share ideas, and collaborate. Every year, […] [...]

FOSDEM 2025 MySQL Devroom – call for participation (from lefred's blog)

We are pleased to announce the Call for Participation (CfP) for the FOSDEM 2025 MySQL Devroom. The Devroom will be held on February 2 (Sunday), 2025 in Brussels, Belgium. The submission deadline for talk proposals is December 1, 2024. FOSDEM is a free event for software developers to meet, share ideas, and collaborate. Every year, […] [...]

MySQL: information_schema.tables performance regression (from Die wunderbare Welt von Isotopp)

pIn IRC codelibera:#mysql/code somebody asked about the performance of codeSHOW TABLES LIKE 'name'/code in MySQL 8.0, which was slow for them, but fast in 5.7. They pointed to a forum article from 2022 that had a similar problem with a codeselect/code-statement on codeI_S.TABLES/code./p pBoth cases had in common a large number of tables in a single schema. The person in IRC had around 40k tables, [...]

MySQL: dual passwords (from Die wunderbare Welt von Isotopp)

pAccount password rotation is often a regulatory requirement. For that very reason, MySQL allows you to have multiple passwords on a single account./p pI have written about this in Rotating Accounts or Passwords? ./p pOf course, if something is a regulatory requirement, you also need to prove that you are meeting it./p pSo Percona has a nice article Tracking Dual Passwords in MySQL which shows h [...]

Galera : understanding Flow Control (from The consistent voice)

Galera : understanding Flow ControlpAs explained in a previous article Galera cluster from Codership is a robust synchronous multi-master replication technology integrated directly into MariaDB Server. This powerful feature enables high availability and data consistency across multiple database nodes without the need for additional software. This tight integration helps MariaDB users can leverage t [...]

Friday, 25. October 2024

Understanding PostgreSQL I/O Details (from MinervaDB Blog)

pUnderstanding PostgreSQL I/O Details: A Deep Dive into Monitoring and Optimization Introduction Input/Output (I/O) operations play a critical role in database performance. In PostgreSQL, these operations are fundamental to the efficiency of data retrieval and [...]/p pThe post Understanding PostgreSQL I/O Details appeared first on The WebScale Database Infrastructure Operations Experts in PostgreS [...]

Achieve a high-speed InnoDB purge on Amazon RDS for MySQL and Amazon Aurora MySQL (from AWS Database Blog)

This post outlines a set of design and tuning strategies for a high-speed purge in an Amazon Relational Database Service (Amazon RDS) for MySQL DB instance and Amazon Aurora MySQL-Compatible Edition DB cluster. Purge is a housekeeping operation in a MySQL database. The InnoDB storage engine relies on it to clean up undo logs and delete-marked table records that are no longer needed for multiversion [...]

Amazon Aurora Global Database support for tagging global clusters (from AWS What's New)

pAmazon Aurora Global Database now supports applying tags to your global clusters, enabling you to associate metadata information with your overall Global Database cluster. For instance, you can apply a tag to organize resource costs for your entire Global Database cluster, making it easier to categorize and track your AWS costs.br br Aurora Global Database allows a single Aurora database to span m [...]

Announcing the MariaDB Vector Bounty Program! (from MariaDB Foundation Blog)

pToday, we are excited to announce a new fund to help give MariaDB Vector a high-quality integration into as many LLM frameworks as possible. … /p pContinue reading \"Announcing the MariaDB Vector Bounty Program!\"/p pThe post Announcing the MariaDB Vector Bounty Program! appeared first on MariaDB.org./p [...]

Thursday, 24. October 2024

Updated MariaDB Java, R2DBC, and Node.js Connectors now available (from MariaDB Corporation Blog)

MariaDB is pleased to announce the immediate availability of MariaDB Connector/Java 3.5.0, Connector/R2DBC 1.3.0, and Connector/Node.js 3.4.0. Download Now   … Continued [...]

Migrate or upgrade your like-to-like databases using AWS DMS homogeneous migration (from AWS Database Blog)

In this post, we highlight common challenges encountered during homogeneous database migrations and how using AWS DMS homogeneous migration can help address them. [...]

Mastering MySQL Instant DDLs: Enhancing Schema Changes with INSTANT (from MinervaDB Blog)

pMastering MySQL Instant DDLs: Enhancing Schema Changes with INSTANT Algorithm, Monitoring, and Rebuild Strategies In MySQL 8.0.12, a new DDL algorithm called INSTANT was introduced, enabling non-blocking schema changes. Initially, INSTANT DDLs allowed adding a [...]/p pThe post Mastering MySQL Instant DDLs: Enhancing Schema Changes with INSTANT appeared first on The WebScale Database Infrastructur [...]

Recent InnoDB Enhancements that Boost Performance in MariaDB Server (from MariaDB Corporation Blog)

The performance of MariaDB Server has been improved over the years thanks to many enhancements to the InnoDB storage engine … Continued [...]

Automatic Statistics (from DoltHub Blog)

DoltDB is the first relational database that supports Git-like version control primitives like branch, diff, and merge. All our versioning… [...]

Wednesday, 23. October 2024

Evaluating the right fit for your Amazon Aurora workloads: provisioned or Serverless v2 (from AWS Database Blog)

In this post, we cover important concepts of Aurora provisioned and Aurora Serverless v2 databases including cost, performance, features, and how to determine which to use for your workload type. [...]

InnoDB busy-wait loops changed in MySQL 8.0.30 (from Small Datum)

pThis blog post attempts to explain some of the performance regressions that landed in InnoDB with MySQL 8.0.30. I'd rather not try to debug perf regressions long after they arrived but here we are. I assume that most of the problems landing in MySQL 8.0.28+ are also in 8.4 and 9.X, so these are problems the community will be dealing with for a long time.brbrOne blog post that documents the regress [...]

October MySQL Meetups - Recap. (from The Oracle MySQL Blog)

Oct 2024 Meetups Recap [...]

Optimizing PostgreSQL Capacity Planning and Sizing with Default Value Settings (from MinervaDB Blog)

pOptimizing PostgreSQL Capacity Planning and Sizing Through Effective Default Value Settings Establishing default values in PostgreSQL is a crucial component of effective capacity planning and sizing. This practice significantly enhances the database's capacity to manage [...]/p pThe post Optimizing PostgreSQL Capacity Planning and Sizing with Default Value Settings appeared first on The WebScale D [...]

Tuesday, 22. October 2024

Offline mode error improvement (from The Oracle MySQL Blog)

This blog post describes work that landed in MySQL v9.0 and implements generic mechanism to attach key/value attributes to a global system variable, used to improve error messages related to "offline mode". [...]

MySQL Enterprise Edition for Financial Services (from The Oracle MySQL Blog)

MySQL Enterprise Edition enables financial services organizations to thrive in a complex and ever-changing environment. By harnessing its capabilities, these institutions can modernize their operations, protect their data, and unlock new opportunities for growth. Modernize your applications and embrace the future of financial services with MySQL Enterprise Edition. [...]

Zero Downtime: Upgrading MySQL Server in a Tungsten Cluster (from Continuent Blog)

Tungsten Clustering allows for many types of maintenance to happen with no downtime at all. This blog post will explore how to upgrade the actual MySQL Server on all cluster nodes with zero downtime. These same steps may be used to upgrade the MySQL server or patch the OS.Tags: MySQLMariaDBzero downtimeMaintenanceupdateHigh Availability [...]

A MySQL 9.1.0 branch with patches (from Laurynas Biveinis' blog)

p Following-up on the previous MySQL 9.0.0 branch with patches, I have rebased them on 9.1.0: patched-mysql-9.1.0. /p p The set of the patches is the same as for 9.0.0: it improves AddressSanitizer support and fixes/improves clone plugin to support a second transactional storage engine: /p ol liFix for Bug 115120: Provide memory debugging macro implementations for AddressSanitizer./li liFix for Bu [...]

TLS in MySQL NDB Cluster 8.4 with MCM 8.4 (from The Oracle MySQL Blog)

Learn how to enable TLS in MySQL NDB Cluster 8.4 with MySQL NDB Cluster Manager 8.4 [...]

OpenID Connect (Oauth2 - JWT) Authentication Support in MySQL (from The Oracle MySQL Blog)

With MySQL 9.1 we introduce support for OpenID Connect, making secure authentication easier for developers and enterprises alike. [...]

Monday, 21. October 2024

The impact of PGO, LTO and more for MySQL on a small CPU: insert benchmark (from Small Datum)

pThis post has results for the impact of PGO, LTO and other compiler options for MySQL using the Insert Benchmark. I previously shared results like this for sysbench. The PGO builds here were created from profiles captured during sysbench and I am curious to understand whether the benefit from those builds extends to other workloads. /pptl;dr/pp/pulliPGO builds created using sysbench also help [...]

Announcing the PlanetScale vectors public beta (from PlanetScale Blog)

You can now use the vector data type for vector search and storage in your PlanetScale MySQL database. [...]

How to Migrate From SQL Server to MySQL (from Devart MySQL Tool Blog)

pOne of the standout features of dbForge Studio is its ability to import data from various sources, including ODBC data. This significantly expands your capabilities, both for direct conversion of data stored on different platforms and for the convenient development of database-related objects such as ETL procedures, reports, and more./p pThe post How to Migrate From SQL Server to MySQL appeared fi [...]

A Comprehensive Guide to TiDB’s Backup and Recovery Technology (from PingCAP Blog)

pData loss can occur while using a database for various reasons, such as operator error, malicious hacker attacks, and server hardware failures. Backup and recovery technology is the final line of defense to ensure data can still be restored and used after such losses.  TiDB, as a native distributed database, fully supports various backup and […]/p pThe post A Comprehensive Guide to TiDB [...]

Group Commit and Transaction Dependency Tracking (from Hack MySQL)

pMySQL 8.0 and newer change and improve how we measure and monitor replication lag. Even though multi-threaded replication (MTR) has been on by default for the last three years (since v8.0.27 released October 2021), the industry has been steeped in single-threaded replication for nearly 30 years. As a result, replication lag with MTR is a complicated topic because it depends on version, configurati [...]

Sunday, 20. October 2024

SQL Statement Management (from MacLochlainns Weblog)

It’s very difficult explaining to students new to relational databases how SQL works. There are many parts that seem intuitive and then there are others that confuse and confound. For beginners, the idea that a SQL statement is simply a text string that you must dispatch to a SQL statement processing engine is new. That’s […] [...]

Installing Example Databases on HeatWave Using Cloud Shell and MySQL Shell (from The Oracle MySQL Blog)

Installing Example Databases on HeatWave Using Cloud Shell and MySQL Shell [...]

Friday, 18. October 2024

Effective Methods for Tracking PostgreSQL Parameter Changes (from MinervaDB Blog)

pEffective Methods for Tracking PostgreSQL Parameter Changes: A Comprehensive Guide Tracking PostgreSQL parameter changes can be essential for understanding the impact of configuration adjustments on the performance and behavior of your database. PostgreSQL provides various [...]/p pThe post Effective Methods for Tracking PostgreSQL Parameter Changes appeared first on The WebScale Database Infrastr [...]

Building and testing MySQL 8.0.40 / 8.4.3 / 9.1.0 on macOS (from Laurynas Biveinis' blog)

p Congrats to Oracle friends with MySQL 8.0.40 / 8.4.3 / 9.1.0 releases! Let's continue my blog post series on builds and tests on macOS (the previous post for MySQL 8.0.38 / 8.4.1 / 9.0.0 is here. I skipped the emergency hotfixes 8.0.39 / 8.4.2 / 9.0.1). /p Build p Mostly good news here. XCode 16 works (8.4.3 & 9.10 need code-Wno-unused-const-variable/code), and so does LLVM 18. The very re [...]

Building Generative AI Applications with TiDB and Amazon Bedrock (from PingCAP Blog)

pIn the rapidly evolving field of artificial intelligence, generative AI (GAI) stands out as one of the most fascinating and groundbreaking advancements. GAI represents a major leap forward, enabling machines to generate original and creative content across various domains, including conversations, stories, images, videos, and music. As companies seek to harness the potential of GAI, […]/p pT [...]

Thursday, 17. October 2024

Essential PostgreSQL Performance Troubleshooting Tools (from MinervaDB Blog)

pEssential PostgreSQL Performance Troubleshooting Tools: A Comprehensive Guide Performance optimization is crucial in PostgreSQL database management. As databases grow in size and complexity, a robust toolkit for identifying and addressing performance bottlenecks becomes essential. Efficiently [...]/p pThe post Essential PostgreSQL Performance Troubleshooting Tools appeared first on The WebScale Da [...]

The impact of PGO, LTO and more for MySQL on a small CPU (from Small Datum)

pThis has results for MySQL 8.0.28 vs sysbench on a laptop-class CPU (AMD 4700u) to understand the impact of various compile-time optimizations including LTO and PGO. I will have results from a server-class CPU next weeok. I previously published results on this but then retracted some of them as they appeared bogus./pptl;dr/pp/pulliclang and gcc have similar performance with a few exceptions/liulli [...]

MySQL NDB Cluster replication: Filter replica updates (from The Oracle MySQL Blog)

A new feature to MySQL NDB Cluster replication allows the NDB data nodes to skip sending unnecessary updates to subscribing MySQL Server nodes. These updates reflect changes that occurred in the NDB cluster, and some subscribing MySQL Servers are configured to discard changes applied by a replica or that are not to be written to binary log at all. Instead of having MySQL Servers discarding changes, [...]

A MySQL backup and recovery tutorial on K8s using the MySQL Operator for Kubernetes (from Severalnines Blog)

pSupported by the growing maturity of operators, many organizations have graduated from using Kubernetes to deploy and manage stateless applications to adopting it for all kinds of stateful workload deployment in the last 4 years. But, running databases on Kubernetes is much more than deployment and can include Day 2 operations like backup and recovery, […]/p pThe post A MySQL backup and reco [...]

How to Connect to a MySQL Database (from Devart MySQL Tool Blog)

pYou can connect to MySQL Server using MySQL Client (the command-line utility) and GUI tools. This article will review each method in detail./p pThe post How to Connect to a MySQL Database appeared first on Devart Blog./p [...]

From Plan to Execution: Zhihu’s Guide to Petabyte-Scale TiDB Database Migration (from PingCAP Blog)

pAuthor: Xiaolei Dai, Database lead at Zhihu Efficient and reliable data migration is crucial for large-scale online services. Zhihu, one of China’s largest knowledge-sharing platforms, recently undertook the complex task of online migration for dozens of TiDB databases, totaling petabytes (PB) of data. This blog post, based on the expertise of Zhihu’s database lead, Dai […]/p pThe post From [...]

Wednesday, 16. October 2024

Sysbench vs c-state on an AMD 4700u (from Small Datum)

pI repeated CPU-bound sysbench on my smallest server while using cpupower idle-set to disable some of the c-states to understand the impact on performance. brbrWith a lower-concurrency (1 thread) workload there was up to a 13% performance improvement when some of the c-states were disabled. /ppWith a higher-concurrency (6 threads) workload there is up to a 14% performance improvement for one o [...]

Azure Database for MySQL - September 2024 updates and latest feature roadmap (from Azure for MySQL Blog)

pWe're thrilled to present the latest roadmap for upcoming features in Azure Database for MySQL - Flexible Server!/p p /p October 2024 Live webinar pThe latest roadmap and other feature updates are also covered in our Monthly Live Webinar on YouTube (Click here to subscribe to our YouTube channel!), which streams the second Wednesday of every month, at 7:30 AM Pacific time. Below is a link to [...]

Work around a MariaDB behaviour change (from SQL And Its Sequels (Ocelot Blog))

CREATE PROCEDURE p() BEGIN DECLARE v CHAR CHARACTER SET utf8 DEFAULT ''; SELECT * FROM information_schema.routines WHERE routine_name > v; END; CALL p(); Result: with current MariaDB 11.4 or MySQL 8.3: a result set.Result: with new or future MariaDB: an error message mentioning collations. The error appears with MariaDB 11.5.1 and later, except for Debian-based… Continue Reading Work arou [...]

Securing Your MaxScale Environment: Best Practices & Configuration Guide (from MariaDB Corporation Blog)

In today’s data-driven landscape, ensuring the security of your database infrastructure is paramount. MariaDB MaxScale, a powerful database proxy for … Continued [...]

Code bloat vs memory system bloat : why is something getting slower (from Small Datum)

pAs I document performance regressions over time in MySQL it helps to assign names for common problems that I see. While there are many problems in general including mutex contention and poor usage of IO, my current focus is on the following:/pp/pullicode bloat - the system uses more instructions per unit of work/lilimemory system bloat - the instructions don't get executed as fast because there is [...]

Coroutines in RonDB, (from Mikael Ronstrom)

p A while ago C++ standard added a new feature to C++ 20 called coroutines. I thought it was an interesting thing to try out for RonDB and used some time this summer to read more about it. My findings was that C++ coroutines can only be used for special tasks that require no stacks. The problem is that a coroutine cannot save the stack./ppMy hope was to find that I could have a single thread t [...]

How Kissflow Breaks Down Silos: A Unified Data Strategy (from PingCAP Blog)

pDiscover how Kissflow moved from a traditional SQL-based system to a unified data strategy leveraging Hybrid HTAP./p pThe post How Kissflow Breaks Down Silos: A Unified Data Strategy appeared first on TiDB./p [...]

How to Migrate MySQL Database to Amazon RDS or Aurora (from Devart MySQL Tool Blog)

pIn this guide, we are going to walk you through the process of transferring a database from a local machine or a traditional server to AWS with the help of the command line as well as with a convenient GUI - dbForge Studio for MySQL./p pThe post How to Migrate MySQL Database to Amazon RDS or Aurora appeared first on Devart Blog./p [...]

Tuesday, 15. October 2024

Amazon Aurora PostgreSQL zero-ETL integration with Amazon Redshift is generally available (from AWS Database Blog)

In this post, we discuss the challenges with traditional data analytics mechanisms, our approach to solve them, and how you can use Amazon Aurora PostgreSQL-Compatible Edition zero-ETL integration with Amazon Redshift, which is generally available as of October 15th, 2024. [...]

Amazon RDS now supports M7g and R7g database instances in additional AWS Regions (from AWS What's New)

pAmazon Relational Database Service (Amazon RDS) for PostgreSQL, MySQL, and MariaDB now support AWS Graviton3-based M7g database instances in Europe (Paris), and R7g database instances in Asia Pacific (Hong Kong) and Europe (Milan).br br With this regional expansion, Graviton3 database instances are now available for Amazon RDS in 21 regions: US East (N. Virginia, Ohio), US West (N. California, Ore [...]

Amazon RDS for MariaDB now supports MariaDB 11.4 with new password validation options (from AWS What's New)

pAmazon RDS for MariaDB now supports MariaDB major version 11.4, the latest long-term maintenance release from the MariaDB community. Amazon RDS for MariaDB 11.4 now supports the Simple Password Check Plugin, and Cracklib Password Check Plugin for password validation. You can use these plugins together, or individually to enforce the security policies appropriate for your organization. MariaDB 11.4 [...]

MariaDB – the Foundation, the Company, and the Future of the Sea Lion (from MariaDB Foundation Blog)

pDid you read the TechCrunch article on MariaDB? “How do you solve a problem like MariaDB? Cozy up to the community, says new CEO“. … /p pContinue reading \"MariaDB – the Foundation, the Company, and the Future of the Sea Lion\"/p pThe post MariaDB – the Foundation, the Company, and the Future of the Sea Lion appeared first on MariaDB.org./p [...]

InnoDB data_locks: a happy ending/new beginning in MySQL 8.0.40 ! (?) (from Marc Reilly)

p /pEarlier today lefred tweeted that the new MySQL releases were rolling out today! As per the usual release process, the yum repositories typically have the release rpms available first, followed by github (release tags here) and then the release notes.brblockquotepHey hey! It's that time again! #MySQL 🐬 9️⃣ .1️⃣ being released! Stay tuned for release notes tomorrow at 9.00AM PDT p [...]

(from Small Datum)

pI recently published results with a summary of HW performance counters for sysbench with MySQL on four CPU types. The performance reports were published over several weeks and to make it easier to see the impact of performance regressions over time, this blog post has the relative QPS for all of the microbenchmarks. Having all of the numbers in one place makes it easier for me to spot things to in [...]

Monday, 14. October 2024

Let the fun begins !!! (from The consistent voice)

Let the fun begins !!!pNo we have defined our facts, their attributes and the relations that unites all those facts. So we’re good aren’t we ?/ppNot really. The complete guide to build a good schema can be summarized as :/pp“Normalize until it breaks, denormalize until it works”. Let the fun begin !!!/ppSo what is denormalization ? What is it for ? Sounds like undoing what we did in the first place [...]

How do you implement row-level security in MariaDB? (from MinervaDB Blog)

pHow do you implement row-level security in MariaDB for fine-grained data access control? This guide outlines the implementation of Row-Level Security (RLS) in MariaDB, an open-source relational database management system. RLS enables database administrators to [...]/p pThe post How do you implement row-level security in MariaDB? appeared first on The WebScale Database Infrastructure Operations Exp [...]

Transition from VNET integration to public access or Private Link using the Azure CLI (from Azure for MySQL Blog)

pYou can transition an Azure Database for MySQL flexible server from using VNET integration (Private Access) to using Public Access or Private Link seamlessly, without the need to alter the server name or migrate data, which simplifies the process for customers. However, after you make the transition, you cannot reverse it. The transition involves approximately 5-10 minutes of downtime fo [...]

How to distinguish facts, attributes and relations from bullshit ? (from The consistent voice)

How to distinguish facts, attributes and relations from bullshit ?pWe’ve seen in my previous article ( who said rant ? ) how to easily normalize database items, but how do we know what’s what ? It is crucial to clearly define and differentiate between facts, attributes, and relationships to create an efficient and evolutive design . Here’s how you can identify each component and filter out unnecess [...]

Galera : often overlooked, still powerful (from The consistent voice)

Galera : often overlooked, still powerfulpGalera Cluster, while often overlooked, is a sophisticated and robust database solution whose full potential is frequently misunderstood. While many IT professionals are aware of its existence, they usually fail to grasp the depth of its capabilities. Understanding Galera’s true strengths can unlock significant improvements in database operations, making it [...]

Deploying Galera Cluster on Kubernetes Webinar (from Galera Blog)

Join us for an in-depth webinar where we introduce the new Helm Chart for Galera Cluster for MySQL, now available from Codership (read the blog). In this session, we’ll guide you through the process of deploying a high-availability MySQL cluster using Galera Cluster on Kubernetes (live demo!). You’ll learn how Helm Charts can simplify Kubernetes […] [...]

Understanding Return Codes of pt-upgrade: A quick guide (from Kedar MySQL Blog)

pInterpreting the results and exit codes of your upgrade tests is essential for assessing the process’s outcome. In this blog, we’ll explore the significance of pt-upgrade return codes and how…/p The post Understanding Return Codes of pt-upgrade: A quick guide first appeared on Change Is Inevitable. [...]

Managing CPU frequency for AMD on Ubuntu 22.04 (from Small Datum)

pI need stable performance from the servers I use for benchmarks. I also need servers that don't run too hot because too-hot servers cause HW to fail and introduce variance when CPU speeds are throttled. This post is about my latest adventures managing CPU speed. My previous post is here./ppAt a high level my solution is:/pp/pullidisable turbo boost/lili(optional) cap the max frequency the CPU can [...]

Is MySQL Dying? (from DoltHub Blog)

Here at DoltHub, like MariaDB and Oracle, we're in the MySQL business. We built a MySQL-compatible database, Dolt, that has all the version… [...]

Saturday, 12. October 2024

How do you solve a problem like MariaDB? Cozy up to the community, says new CEO (from TechCrunch)

pThe new CEO of MariaDB (Plc) says he wants closer-knit collaboration with the foundation behind the eponymous open source database project. He cites the corporation’s newfound stability from its recent acquisition by a private equity firm as to why it should now be able to get on a firmer footing. It has been a turbulent […]/p p© 2024 TechCrunch. All rights reserved. For personal use o [...]

Friday, 11. October 2024

MyDumper + ZFS – Merely Faster Than mysqldump is not Enough (from Shattered Silicon OSDB Blog)

pOptimizing MyDumper's logical backup throughput using ZFS./p pThe post MyDumper + ZFS – Merely Faster Than mysqldump is not Enough appeared first on Shattered Silicon./p [...]

HeatWave MySQL - Quick guide: Enabling Automatic storage expansion (from The Oracle MySQL Blog)

HeatWave MySQL now supports Automatic Storage Expansion. HeatWave Automatic Storage Expansion dynamically adjusts storage capacity to accommodate increasing database workloads, ensuring continuous operation without any downtime. [...]

Implementing “Always Encrypted” Functionality in PostgreSQL (from MinervaDB Blog)

pImplementing “Always Encrypted” Functionality in PostgreSQL: Techniques and Best Practices for Secure Data Encryption PostgreSQL doesn't natively have a feature exactly equivalent to SQL Server's Always Encrypted option. Always Encrypted is a feature in SQL [...]/p pThe post Implementing “Always Encrypted” Functionality in PostgreSQL appeared first on The WebScale Database Infrastructure Operation [...]

Optimizing Inner Joins for High-Performance MySQL Queries (from MinervaDB Blog)

pOptimizing Inner Joins for High-Performance MySQL Queries Inner JOINs in MySQL can have a substantial impact on query performance, potentially leading to increased memory and CPU utilization. This effect is particularly pronounced when dealing with [...]/p pThe post Optimizing Inner Joins for High-Performance MySQL Queries appeared first on The WebScale Database Infrastructure Operations Experts i [...]

What does "perf stat" tell us about MySQL performance regressions on an AMD Threadripper CPU (from Small Datum)

pI used perf stat to collect a variety of HW performance counter and will share the results over several posts. I used 4 different servers with 4 different CPUs and there will be a post per CPU. This is the third post with results from a server class CPU. Previous posts that used laptop class CPUs (but mini PCs, not laptops) are here and here and a result from a server class CPU [...]

What does "perf stat" tell us about MySQL performance regressions on an Intel Xeon CPU (from Small Datum)

pI used perf stat to collect a variety of HW performance counter and will share the results over several posts. I used 4 different servers with 4 different CPUs and there will be a post per CPU. This is the third post with results from a server class CPU. Previous posts that used laptop class CPUs (but mini PCs, not laptops) are here and here.brtl;dr/pp/pulliMySQL (InnoDB and MyRocks) gets slower o [...]

What does "perf stat" tell us about MySQL performance regressions on a Ryzen 7 7735HS CPU (from Small Datum)

pI used perf stat to collect a variety of HW performance counter and will share the results over several posts. I used 4 different servers with 4 different CPUs and there will be a post per CPU. This is my second post and my first post is here. The previous post and this one use a small server. Results here are similar to results on my other small server./pptl;dr/pp/pulliMySQL (InnoDB and MyRocks) [...]

What does "perf stat" tell us about MySQL performance regressions on a Ryzen 7 4700u CPU (from Small Datum)

pI used perf stat to collect a variety of HW performance counter and will share the results over several posts. I used 4 different servers with 4 different CPUs and there will be a post per CPU. First up is a result from my smallest server that uses a AMD Ryzen 7 4700u CPU./pptl;dr/pp/pulliMySQL (InnoDB and MyRocks) gets slower over time from both memory system bloat (TLB and cache activity) and co [...]

MySQL October 2024 GA Releases Now Available (from The Oracle MySQL Blog)

This October release is the third LTS release and second Innovation release since MySQL announced our move to a new LTS/Innovation release model. For more details see MySQL Releases: Innovation and LTS. During the innovation cycle, MySQL 9.x quarterly releases will include new features, deprecations and removals, and bug fixes. The 9.x releases also include Shell, Router, Connectors and Client [...]

Advanced ProxySQL Features and How to Leverage Them (from ProxySQL Blog)

pAre you facing challenges managing your MySQL database as user traffic increases? As more users and applications connect, performance can slow down, leading to delays that impact the user experience. Ensuring high availability and quick response times is essential for smooth operations.   ProxySQL acts as an effective intermediary between your applications and your MySQL [...]/p pThe post Advanced [...]

Using Dolt with JDBC (from DoltHub Blog)

Dolt is the world's first version-controlled SQL database – you can branch, merge, diff, fork, revert, rebase, and clone your relational… [...]

Thursday, 10. October 2024

MySQL Rockstar 2023: Q&A with Alkin Tezuysal (from ODBMS.org)

Q1. You were awarded the MySQL Rockstar 2023. Congratulations! What do you think are your most important contributions in the area of open-source relational databases? My most significant contributions to the open-source relational database community... [...]

Emacs Projectile Tweaks for MySQL Development (from Laurynas Biveinis' blog)

p I am using Emacs with Projectile (besides other packages) for MySQL development. Here's a couple of little tweaks to save a few keystrokes here and there: /p ul liVisit (which in Emacs parlance means open) the MTR test file, by its MTR name instead of file path:/li /ul pre;; This is a not a MySQL-specific implementation of `projectile-find-test-file'. ;; That function is meant for jumping from [...]

MariaDB Contribution Statistics, October 2024 (from MariaDB Foundation Blog)

pAnother quarter year has gone by, and in the world of MariaDB, it is time for another contributions report. The raw data for this report can be found on GitHub, here. … /p pContinue reading \"MariaDB Contribution Statistics, October 2024\"/p pThe post MariaDB Contribution Statistics, October 2024 appeared first on MariaDB.org./p [...]

Anatomy of a Throttler, part 2 (from PlanetScale Blog)

Design consideration for implementing a database throttler with a comparison of singular vs distributed throttler deployments. [...]

Wednesday, 09. October 2024

How to run MySQL with text in huge pages (from Small Datum)

pI have been documenting why MySQL gets slower (in some cases) from version 5.6 to 8.0. One of the causes is more cache and TLB activity, especially misses. I have tried huge pages for data and it helps a bit, but doesn't solve the problem - see here and here. But it comes at cost in usability.brbrHere I explain how to use huge pages for text (the code of mysqld). I have work in progress to share m [...]