Planet for the MySQL Community

A blog aggregator for the MySQL Community/Ecosystem

This website is in beta. A description of what it 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.

Monday, 19. April 2021

MySQL Group Replication: Conversion of GR Member to Async Replica (and Back) In the Same Cluster (from Percona Database Performance Blog)

♦MySQL Group Replication is a plugin that helps to implement highly available fault-tolerant replication topologies. In this blog, I am going to explain the complete steps involved in the below two topics. How to convert the group replication member to an asynchronous replica How to convert the asynchronous replica to a group replication member Why […] [...]

InnoDB Data Locking – Part 5 “Concurrent queues” (from MySQL Server Blog)

pIn this blog series, I’m describing how InnoDB locks data (tables and rows) in order to provide illusion to clients that their queries are executed one after another, and how this was improved in recent releases./p pSo far we saw that access right currently granted and waiting to be granted are represented as record locks and table locks objects in memory, which we can inspect via performance_sche [...]

Using Automation to Speed up Release Tests on Galera Cluster With ClusterControl (from SeveralNines Open Source Database Blog)

pRelease tests are typically one of the steps in the whole deployment process. You write the code, and then you verify how it behaves on a staging environment, and then, finally, you deploy the new code on the production. Databases are internal to any kind of application, and, therefore, it is important to verify how the database-related changes alter the application. It is possible to verify it in [...]

Using a GPU Boosts TiDB Analytics Performance by 10 to 150 Times (from TiDB and TiKV Blog)

At TiDB Hackathon 2020, a team used GPU acceleration techniques to improve the performance of CPU-intensive analytical query processing and achieved 10x~150x performance improvement. [...]

Friday, 16. April 2021

How to copy a Schema using MySQL Shell Dump & Load Utility ? (from lefred's blog)

Another common question I receive about MySQL Shell Dump & Load Utility is how to dump a schema and load it with another name. Make a copy in fact. Dumping the Schema To do so, we need to use the dumpTables() method: JS  util.dumpTables("test", [], "/tmp/dump", {all: true}) It is important to notice that the second parameter is an ... Read More [...]

InnoDB Data Locking – Part 4 “Scheduling” (from MySQL Server Blog)

pIn this blog series, I’m describing how InnoDB locks data (tables and rows) in order to provide illusion to clients that their queries are executed one after another, and how this was improved in recent releases./p pAs we’ve already seen, the order in which server pretends transactions are happening (the serialization order) is tied to the order in which locks are granted to transactions. [...]

Thursday, 15. April 2021

Online DDL with Group Replication In Percona Server for MySQL 8.0.22 (and MySQL 8.0.23) (from Percona Database Performance Blog)

♦While I was working on my grFailOver POC, I have also done some additional parallel testing. One of them was to see how online DDL is executed inside a Group Replication cluster. The online DDL feature provides support for instant and in-place table alterations and concurrent DML. Checking the Group Replication (GR) official documentation, I […] [...]

MySQL Shell Dump how to deal with array arguments in non-interactive mode (from lefred's blog)

As you know, the best way to perform logical dump for MySQL is to use MySQL Shell Dump & Load utilities. This is the most powerful option as it can dump and load in parallel (it also include many options to migrate to MDS very easily and supports OCI Object Store too). One of the main question I receive related ... Read More [...]

How to Replicate Securely and in Real-Time From MySQL to Amazon Redshift (from Continuent Blog)

pAmazon Redshift has been providing scalable, quick-to-access analytics platforms for many years, but the question remains: how do you get the data from your existing datastore into Redshift for processing? This blog looks at that question by providing some background information on Redshift replication as well as details on how to easily replicate from MySQL to Redshift./p Tags: MySQLreplicat [...]

Securing MySQL Backups: A Guide (from SeveralNines Open Source Database Blog)

pIf you’ve ever used MySQL, chances are you probably took backups of your database. If you took backups of your database, chances are you have at least once thought of how you could secure them. In this blog post we are going to tell you how to do exactly that./p Why Should You Secure Your MySQL Backups? pBefore we tell you how you should secure your MySQL backups, we should probably tell you why [...]

Empower Your Business with Big Data + Real-time Analytics in TiDB (from TiDB and TiKV Blog)

Big data is a growing need for ambitious companies. Learn the usage, cost, and technology selection of real-time big data analytics and how TiDB prevails over other solutions. [...]

Wednesday, 14. April 2021

Win Percona Swag for Technical Product Reviews! (from Percona Database Performance Blog)

♦You can earn Percona swag by writing a short technical review about Percona software by May 30, 2021!  The keyword here is technical. Percona is seeking reviews that describe Percona software use in particular environments or in solving particular issues, and why! This means being specific about your Percona environment, architecture, and problem-solving. Usage of […] [...]

What you can do with Auto-failover and Percona Server Distribution (8.0.x) (from TusaCentral - MySQL Blogs)

pWhere x is >= 22 ;)/p The Problem pThere are few things your data does not like. One is water and another is fire. Well, guess what:/p p♦/p pIf you think that everything will be fine after all, take a look:/p pbr♦br/p pGiven my ISP had part of its management infrastructure on OVH, they had been impacted by the incident./p pAs you can see from the highlight, the ticket number in three years chan [...]

What You Can Do With Auto-Failover and Percona Distribution for MySQL (8.0.x) (from Percona Database Performance Blog)

♦Where x is >= 22 😉 The Problem There are few things your data does not like. One is water and another is fire. Well, guess what: If you think that everything will be fine after all, take a look: Given my ISP had part of its management infrastructure on OVH, they had been impacted […] [...]

Percona Distribution for MySQL: High Availability with Group Replication Solution (from Percona Database Performance Blog)

♦This blog provides high availability (HA) guidelines using group replication architecture and deployment recommendations in MySQL, based on our best practices. Every architecture and deployment depends on the customer requirements and application demands for high availability and the estimated level of usage. For example, using high read or high write applications, or both, with a […] [...]

Percona Live ONLINE: Focus on Unprecedented Demand for Scale (from Percona Database Performance Blog)

♦The full conference schedule for Percona Live ONLINE 2021, taking place on May 12-13, is now live!  This year we see a strong focus on how organizations successfully managed the technology challenges of the past 12 months. Register and attend for FREE! A number of presentations demonstrate the key role databases played in achieving company […] [...]

Tuesday, 13. April 2021

Percona Distribution for MySQL: High Availability with Group Replication solution (from TusaCentral - MySQL Blogs)

p♦This blog provides high availability (HA) guidelines using group replication architecture and deployment recommendations in MySQL, based on our best practices./p pEvery architecture and deployment depends on the customer requirements and application demands for high availability and the estimated level of usage. For example, using high read or high write applications, or both, with a need for 99. [...]

Understanding Lock Granularity in MySQL (from SeveralNines Open Source Database Blog)

pIf you’ve been working with MySQL for some time, you have probably heard the terms “table-level locking” and “row-level locking”. These terms refer to the lock granularity in MySQL - in this blog we will explain what they mean and what they can be used for./p What is Lock Granularity in MySQL? pEach MySQL storage engine supports different levels of granularity for their locks. MySQL has three lo [...]

Setup DR for your MySQL InnoDB Cluster (from lefred's blog)

MySQL InnoDB Cluster is the High Availability solution for MySQL. It delivers automatic fail-over and guarantees zero data loss (RPO=0). RPO: Recovery Point Objective describes the interval of time that might pass during a disruption before the quantity of data lost during that period exceeds the Business Continuity Plan’s maximum allowable tolerance. Example: our business architecture needs [...]

Monday, 12. April 2021

Replay the Execution of MySQL With RR (Record and Replay) (from Percona Database Performance Blog)

♦Chasing bugs can be a tedious task, and multi-threaded software doesn’t make it any easier. Threads will be scheduled at different times, instructions will not have deterministic results, and in order for one to reproduce a particular issue, it might require the exact same threads, doing the exact same work, at the exact same time. […] [...]

MySQL NDB Cluster at a Glance (from MySQL High Availability)

♦ p  266 total views,  266 views today/p Tweet Share … [...]

TiDB 5.0 GA: A One-Stop HTAP Solution Delivering Speed, Stability, and Simplicity (from TiDB and TiKV Blog)

TiDB 5.0 GA is released. As a one-stop HTAP solution, it delivers better and more stable OLTP performance and enhanced OLAP performance with a Massively Parallel Processing engine. [...]

Sunday, 11. April 2021

MySQL Script Test (from MacLochlainns Weblog)

There are many ways to test and edit files. A lot of developers only use their favorite Integrated Developer Environment (IDE) but I find testing script files within the scope of a pipelined set of scripts much faster. The ability to edit a script from within the MySQL Command-Line Interface (CLI) or MySQL Shell would […] [...]

Verify a user’s password in Linux (from Geeky Hacker - Coding, Tech & Linux)

pLinux does not store any plain password. It only stores hashes of passwords in a file called the shadow file. That makes cracking passwords more difficult by the contrast of [...]/p pThe post Verify a user’s password in Linux appeared first on Geeky Hacker./p [...]

Friday, 09. April 2021

Releasing ProxySQL 2.0.18 (from ProxySQL Blog)

pWe are proud to announce the latest release of ProxySQL version 2.0.18 on the 8th of April 2021 ProxySQL is a high performance, high availability, protocol aware proxy for MySQL, with a GPL license! It can be downloaded from the ProxySQL Repository (instructions here) or for a Docker image check out the [...]/p pThe post Releasing ProxySQL 2.0.18 appeared first on ProxySQL./p [...]

How to Get Started With Database Automation (from SeveralNines Open Source Database Blog)

pDatabase automation helps make complex and time consuming tasks simple and fast. The tasks most commonly and easily identified for automation are those that are time-consuming yet repetitive. These often consume productivity, and can affect company finances because you have to pay the people working on these tasks. However, the processes in which time and effort are needlessly consumed can be conv [...]

How I Enabled TiKV Coprocessor to Support ENUM and SET Calculations (from TiDB and TiKV Blog)

A TiKV contributor participated in the Coprocessor support ENUM/SET project and implemented these two calculations. This helped improve TiKV's calculation performance. [...]

Thursday, 08. April 2021

Considerations on Encryption for Data at Rest for MariaDB (from SeveralNines Open Source Database Blog)

pData security is crucial in times of GDPR, PCI DSS or HIPPA. To comply with the regulations, one has to exercise extreme caution regarding how the data should be stored and protected. Data, typically, can be at rest or in transit. Data in transit is the data transferred from or to the database. Query results sent to the client or application or replicated data between nodes of the cluster are exam [...]

Galera Cluster for MySQL 5.6.51, 5.7.33, and 8.0.23 released (from Galera Blog)

Codership is pleased to announce a new Generally Available (GA) release of the multi-master Galera Cluster for MySQL 5.6, 5.7 and 8.0, consisting of MySQL-wsrep 5.6.51 (release notes, download), 5.7.33 (release notes, download) and 8.0.23 (release notes, download) with Galera replication library 3.33 (release notes, download) implementing wsrep API version 25, and Galera replication library […] [...]

Wednesday, 07. April 2021

MySQL 101: Basic MySQL Server Triage (from Percona Database Performance Blog)

♦So your MySQL server has crashed.  What do you do now?  When a server is down, in my opinion, there are two steps that are essential and both are extremely important and neither should be neglected: Save diagnostic information for determining the root cause analysis (RCA). Get the server back up and running. Too many […] [...]

Percona Kubernetes Operators and Azure Blob Storage (from Percona Database Performance Blog)

♦Percona Kubernetes Operators allow users to simplify deployment and management of MongoDB and MySQL databases on Kubernetes. Both operators allow users to store backups on S3-compatible storage and leverage Percona XtraBackup and Percona Backup for MongoDB to deliver backup and restore functionality. Both backup tools do not work with Azure Blob Storage, which is not […] [...]

MySQL Count Weekday occurrences (from Digital Owl's Prose)

pEach SQL dialect is different in some way, shape, form, or fashion from the next flavor. Some dialects have this function, while others have that function. In this post, I cover porting over Oracle SQL to MySQL in order to count the number of occurrences of a specific weekday found in the current given month […]/p pThe post MySQL Count Weekday occurrences appeared first on Digital Owl's [...]

Tuesday, 06. April 2021

Things you didn’t know about MySQL and Date and Time and DST (from Percona Community Blog)

p(based on a conversation with a colleague, and a bit of Twitter) A Conundrum A developer colleague paged me with this: [crayon-607149ac4fe60094690342/] It is obviously wrong, and weirdly so. It only works for “2 year”, not with other values: [crayon-607149ac4fe79891677163/] It has to be exactly 730 days (2 * 365 days, 2 years): [crayon-607149ac4fe80613230686/] The […]/p pThe post Things you [...]

Do not trust other peoples benchmarks! (from Shinguz's Blog)

pBecause they do NOT reflect your problems./p pOne of our customers upgraded last month from MariaDB 10.2 to MariaDB 10.5. In the same change he also converted all his DWH/BI tables from MyISAM to Aria. An all this, naturally, without testing. And it miserably failed! And then we were under heavy time pressure to make things working again.../p pWhat has changed:/p ulliMariaDB version: MariaDB op [...]

MySQL and UUIDs (from Die wunderbare Welt von Isotopp)

pIn ALTER TABLE for UUID we discuss currently proper way to store and handle UUID in MySQL. Currently it works, even in a performant way, but it still hurts. It should not./p Definition of UUID pThe RFC 4122 defines various types of UUID, and how they are being formatted for presentation and as a bit field on the wire. As this document was written bei Leach and Salz, among others, RFC 4122 UUIDs [...]

Which Version of MySQL Should I Use for MyRocks? (from Percona Database Performance Blog)

♦As database footprints continue to explode, many companies are looking for ways to deal with such rapid growth.  One approach is to refactor traditional relational databases to fit into a NoSQL engine, where horizontal scalability is easier.  However, in many cases, this is in no way a trivial undertaking. Another approach that has been gaining […] [...]

Monday, 05. April 2021

A Guide to Database Automation with Severalnines ClusterControl (from SeveralNines Open Source Database Blog)

pNowadays, database automation is a very hot topic. Database automation, simply speaking, refers to leveraging processes and tools to make administrative tasks for database developers and database administrators simpler./p Why Database Automation? pDatabase automation refers to the use of self-regulating standalone processes for administrative tasks in a database. As your data grows, database aut [...]

Saturday, 03. April 2021

MySQL & macOS Silicon (from MacLochlainns Weblog)

It’s a problem for my students who purchased the new Apple hardware that uses Apple Silicon because they can’t install a Docker MySQL instance. However, there is Homebrew formula that works on macOS Big Sur and the new Apple silicon. It supports: Intel Silicon: macOS Big Sur, Catalina, and Mojave Apple Silicon: macOS Big Sur […] [...]

Friday, 02. April 2021

Percona XtraBackup Point-In-Time Recovery for the Single Database (from Percona Database Performance Blog)

♦Recovering to a particular time in the past is called Point-In-Time Recovery (PITR). With PITR you can rollback unwanted DELETE without WHERE clause or any other harmful command. PITR with Percona XtraBackup is pretty straightforward and perfectly described in the user manual. You need to restore the data from the backup, then apply all binary […] [...]

Upgrading to MySQL 8: Embrace the Challenge (from Percona Database Performance Blog)

♦Nobody likes change, especially when that change may be challenging.  When faced with a technical challenge, I try to remember this comment from Theodore Roosevelt: “Nothing in the world is worth having or worth doing unless it means effort, pain, difficulty.”  While this is a bit of an exaggeration, in this case, the main concept […] [...]

Making an unexpected leap with interval syntax (from Die wunderbare Welt von Isotopp)

p(based on a find by Ruud van Tol, and several Twitter contributions)/p pRuud commented on our DST discussion with/p precodemysql> SELECT '2019-02-28 12:34:56'+ INTERVAL 1 YEAR + INTERVAL 1 DAY as a, '2019-02-28 12:34:56'+ INTERVAL 1 DAY + INTERVAL 1 YEAR as b\G a: 2020-02-29 12:34:56 b: 2020-03-01 12:34:56/code/pre p2019 is a year before a leap year. Adding (left to right) a year brings u [...]

Enforcing Role-Based Access Controls with ClusterControl (from SeveralNines Open Source Database Blog)

pIn Severalnines’ recent release of ClusterControl version 1.8.2 we have introduced a lot of sophisticated features and changes. One of the important features is the newly improved User Management System, which covers New User and LDAP Management.  A complementary existing capability in ClusterControl is its Role-Based Access Control (RBAC) for User Management, which is the focus of this blog./p R [...]

MariaDB/XtraDB Cluster Default Disk Files and its Significance (from Mydbops Blog)

Galera is the core tech behind the Percona XtraDB Cluster and MariaDB Cluster. When using the Galera cluster we might have come across multiple files in the data directory beyond the Native MySQL or InnoDB Files. It is always good to understand these files to know what is happening internally. Each file present in the … Continue reading MariaDB/XtraDB Cluster Default Disk Files and its S [...]

Thursday, 01. April 2021

Real-Time Big Data Analytics: How to Replicate from MySQL to Hadoop (from Continuent Blog)

pIt’s Hadoop’s 15th birthday and we’re looking at how to easily replicate from MySQL to Hadoop and why in this blog on real-time big data analytics./p Tags: MySQLreplicationreal-timeHadooptungsten replicatoramazon marketplacebig data [...]

Working to Validate MyRocks in the Enterprise with Dropbox (from Percona Database Performance Blog)

♦Percona Technical Account Managers get the privilege of working with some of our largest enterprise clients day in and day out.  As such, we get to really focus on how to best leverage our technology to generate measurable benefits for our users.  While it is fun to “nerd out” and always strive to use the […] [...]

Easily Validate Configuration Settings in MySQL 8 (from Percona Database Performance Blog)

♦In past versions of MySQL, there was often an ‘upgrade dance’ that had to be performed in starting up a newly upgraded MySQL instance with the previous version configuration file. In some cases a few deprecated options might no longer be supported in the newer server version, triggering an error and a subsequent shutdown moments […] [...]

Infinitely Scalable Storage with High Compression Feature (from Percona Database Performance Blog)

♦It is no secret that compute and storage costs are the main drivers of cloud bills. Migration of data from the legacy data center to the cloud looks appealing at first as it significantly reduces capital expense (CapEx) and keeps operational expenses (OpEx) under control. But once you see the bill, the lift and shift […] [...]

Wednesday, 31. March 2021

Webinar April 14: Optimize and Troubleshoot MySQL Using Percona Monitoring and Management (from Percona Database Performance Blog)

♦Optimizing MySQL performance and troubleshooting MySQL problems are two of the most critical and challenging tasks for MySQL DBAs. The databases powering applications need to be able to handle changing traffic workloads while remaining responsive and stable in order to deliver an excellent user experience. Further, DBAs are also expected to find cost-efficient means of […] [...]

Getting started with the MariaDB MaxScale GUI (from MariaDB Corporation Blog)

MariaDB MaxScale 2.5 delivers many new features, including MaxScale GUI, a graphic user interface for managing MaxScale. This blog instructs how to install and configure the MaxScale GUI. [...]

MySQL 101: Using super_read_only (from Percona Database Performance Blog)

♦As many of you may remember, Percona added the super_read_only feature way back in Percona Server for MySQL 5.6.21, based on work done by WebScaleSQL. This feature eventually found its way into the Community branch of MySQL starting with 5.7.8, and it works the same in both cases. While this is now old news, over […] [...]

Support EOL for MySQL Connector/J 5.1 (from

Per Oracle’s Lifetime Support policy, as of Feb 9th, 2021, MySQL Connector/J 5.1 series is covered under Oracle Sustaining Support. Downloadable binaries can be found in the MySQL Products Archives and in the Maven Central Repository. MySQL Connector/J 5.1.49 has … Continue reading → [...]

Tips and Trick using Audit Logging for MariaDB (from SeveralNines Open Source Database Blog)

pMariaDB’s Audit Plugin provides auditing functionality for not only MariaDB but MySQL as well (as of, version 5.5.34 and 10.0.7) and Percona Server. MariaDB started including by default the Audit Plugin from versions 10.0.10 and 5.5.37, and it can be installed in any version from MariaDB 5.5.20./p p /p pThe purpose of the MariaDB Audit Plugin is to log the server's activity. For each client sess [...]

MySQL COUNT() aggregate function – Medium cross post (from Digital Owl's Prose)

pI recently published a blog post over on Medium about the differences in 2 versions of the MySQL COUNT() aggregate function: COUNT(*) and COUNT(column_name or expression). I wanted to share the post here with any readers who may be interested so continue reading for more on this post… Self-Promotion: If you enjoy the content written […]/p pThe post MySQL COUNT() [...]

Tuesday, 30. March 2021

MariaDB configuration analysis (from Shinguz's Blog)

pIf we do customers database configuration analysis we check on one side if the most important MariaDB server system variables (codeinnodb_buffer_pool_size/code, ...) are set appropriately but also if some MariaDB server system variables are configured completely wrong./p pFortunately MariaDB introduced in MariaDB 10.1 the codeINFORMATION_SCHEMA.SYSTEM_VARIABLES/code view where you can find all th [...]

Using TiDB in Mission Critical Scenarios of the Financial Industry (Part I) (from TiDB and TiKV Blog)

In this post, you'll learn how the financial industry uses databases in their mission critical systems and how TiDB-based solutions help them address the pain points of traditional RDBMS. [...]

Monday, 29. March 2021

QUEST Insync & Open Source 101 (from PHP With MySQL)

p Not one but two virtual presentations on March 30th for me./ppFirst up at 10:45 Central is MySQL Indexes, Histograms Other Ways To Speed Up Queries  and look for Session ID: 101290 /ppSecond at 3:45 Central is An Introduction to MySQL Indexes & Histograms (a shorter version of the first talk) and I will be staffing the virtual booth./ppSlides will be posted at ht [...]

Things you didn't know about MySQL and Date and Time and DST (from Die wunderbare Welt von Isotopp)

p(based on a conversation with a colleague, and a bit of Twitter)/p A Conundrum pA developer colleague paged me with this:/p precodemysql> select UNIX_TIMESTAMP("2021-03-26 03:07:00" + INTERVAL 2 YEAR) - UNIX_TIMESTAMP("2021-03-26 02:07:00" + INTERVAL 2 YEAR) as delta\G delta: 420/code/pre pIt is obviously wrong, and weirdly so. It only works for “2 year”, not with other values:/p precodemy [...]

Securing MySQL - Making Use of Data Access Privileges for a Secure Installation (from SeveralNines Open Source Database Blog)

pMySQL installation security is something that should be on the  mind of every MySQL DBA. While we have discussed how you should take care of your MySQL security as a whole (take a look at some of our previous posts, specifically the MySQL security series Part One and Part Two), we haven’t  discussed specific security-related issues, including  those issues related to privileges. We do that here./p [...]

Saturday, 27. March 2021

MySQL ERROR Log Table Explained (from Mydbops Blog)

Over the decades we have been reading the MySQL error log from the server system file, if there are any issues in MySQL or any unknown restart happened , generally we look at the mysql error log. By default MySQL error log can be found in the default path /var/log/mysqld.log , or it can be … Continue reading MySQL ERROR Log Table Explained → [...]

Friday, 26. March 2021

Overview of MySQL Alternative Storage Engines (from Percona Database Performance Blog)

♦For MySQL, MyISAM and InnoDB storage engines are very popular. Currently, we are mostly using InnoDB engines for high reliability and high performance. Apart from those engines, we also have some other alternative engines and they have some nice features in them. In this blog, I am going to explain some of those engines, which […] [...]

MariaDB or MySQL, that is the question (from Shinguz's Blog)

pMany customers come to us and ask us whether to use MariaDB or MySQL. The answer is not so simple. FromDual is a neutral and vendor independent MariaDB/MySQL consulting company. So we should not have (in the meaning of neutral) a clear preference. For us internally we have chosen our strategy according to some clearly defined criteria. But what we have chosen for us is not necessarily the right ch [...]

How to Replicate from MySQL to MongoDB (incl. MongoDB Atlas) (from Continuent Blog)

pRead about MySQL to MongoDB / MongoDB Atlas replication: what it’s all about, why it’s needed and how it works./p Tags: mongodbmongodb atlasMySQLreplicationMariaDBPerconamysql vs mongodb [...]

Thursday, 25. March 2021

MariaDB sql_mode = 'oracle' (from Shinguz's Blog)

pMariaDB has some time ago introduced or reused the codesql_mode = 'oracle'/code. What they basically try to do is to implement a subset of the Oracle PL/SQL language. Because we receive more and more request from customers about MariaDB's Oracle PL/SQL it is worth investigating a bit more in this feature and summarize the state of the art of this topic in this article./p pSee also our former arti [...]

The Steps Involved in Creating a Percona Product Release (from Percona Database Performance Blog)

♦Have you ever wondered what it takes to complete Percona Server for MySQL (PS), Percona XtraDB Cluster (PXC), and Percona XtraBackup (PXB) releases?  Let’s step back just a minute and talk about what Percona stands for. We believe we “stand on the shoulders of giants.” This means we respect our upstream sources and work to […] [...]

Wednesday, 24. March 2021

From Spreadsheet to Database with MySQL Workbench (from PHP With MySQL)

pIn the last post I covered some of the many reasons to migrate data from a spreadsheet to a database and now it is time to show how to do just that.  Moving data from a spreadsheet into MySQL can actually be pretty simple in many cases. Now I will not mislead you by telling you that all cases are easy but there is an easy way to make this migration.  And I highly recommend the following [...]

Importing an Encrypted InnoDB Tablespace into MySQL (from Percona Database Performance Blog)

♦Transportable tablespaces were introduced in MySQL 5.6. Using this feature, we can directly copy a tablespace to another server and populate the table with data. This is a very useful feature for large tables. The transportable tablespace mechanism is faster than any other method for exporting and importing tables because the files containing the data […] [...]

Memory saturated MySQL (from Percona Community Blog)

pIf at all possible, we build databases so that the working set of the database fits into memory. What does that even mean? Working Set In computer science, the “Working Set” of a program is the set of things it will be accessing in the near future. Because computer science has not yet solved looking […]/p pThe post Memory saturated MySQL appeared first on Percona Community Blog./p [...]

That's a lot of databases (from Die wunderbare Welt von Isotopp)

pWhere I work, we are using MySQL a lot. The databases are being organized in replication hierarchies, and each hierarchy is a tree topology with a single primary and a number of intermediate replicas./p Replication is a tree managed by Orchestrator pWe are using MySQL orchestrator to manage the replication topology./p p♦/p pMySQL Orchestrator shows a typical replication hierarchy. Each color i [...]

MySQL Aggregate Query using CodeIgniter’s Query Builder (from Digital Owl's Prose)

pCodeIgniter’s Query Builder ORM has class methods for nearly any kind of database access/operation you can think of. In this post, I’ll cover some of the available methods for retrieving aggregate-level query results. The examples in this post map out Query Builder method chaining to produce results you would get from a raw MySQL query. […]/p pThe post MySQL Aggregate Query using [...]

Deep Dive: How to Easily Deploy MySQL Clusters With The Tungsten Cluster AMI (from Continuent Blog)

pRead this blog to get a more in-depth understanding of what the Tungsten Cluster AMI is, how it works and how to use it in order to easily deploy MySQL database clusters and more./p Tags: MySQLClusteringtungsten clusteringdatabase clustertungsten cluster ami [...]

Code generation in Vitess (from Vitess)

Cross posting link Golang is a wonderful language. It’s simple, and most of the time not confusing or surprising. This makes it easy to jump into library code and start reading and quickly understand what’s going on. On the other hand, coming from other languages, there are a few features that would make our lives easier. We are building Vitess using mostly golang, and most of us are ha [...]

1.6 million QPS with MDB-10.6 (from MySQL On ARM)

We all love MariaDB Server for its features and performance. Lately, it further improved it through a series of optimization (in 10.6) around locking, flushing, etc… So we decided to give it a try and also analyze its performance with more numa nodes (4 numa nodes). Article enlist, issues faced on the numa scalability front, solution adopted and how it helped hit the threshold of 1.6 millions QPS f [...]

Tuesday, 23. March 2021

Using SQLAlchemy with MariaDB Connector/Python: Part 1 (from MariaDB Corporation Blog)

How to create a Python application that uses MariaDB Connector/Python and SQLAlchemy to connect to and communicate with a MariaDB database instance. [...]

Is a Session Analyzer a Good Tool to Simulate Real Traffic? (from Percona Database Performance Blog)

♦Starting a long time ago, we wanted to reproduce workload in a non-production environment, and there were different attempts to achieve that goal (Query Playback is just one of them). But there is another point of view, where you need to write your own workload to do so. Both Have Pros and Cons Reproduce Workload: […] [...]

CVE-2020-29488: Changes in How Absolute Paths are Handled in Percona XtraBackup xbstream (from Percona Database Performance Blog)

♦Due to CVE-2020-29488, Percona XtraBackup is modifying how xbstream handles absolute paths to prevent malicious file injections. Like the tar archiving utility, the new behavior removes the leading ‘/’ character and references to the parent directory. Fixes are available in Percona XtraBackup versions: >= 2.4.22 >= 8.0.23-16.0 For example, ../../../d1/../d2/h.txt will be saved [...]

Tips and Tricks for Implementing Database Role-Based Access Controls for MariaDB (from SeveralNines Open Source Database Blog)

pIn a database management system (DBMS), role-based access controls (RBAC), is a restriction on database resources based on a set of pre-defined groups of privileges and has become one of the main methods for advanced access control. Database roles can be created and dropped, as well as have privileges granted to and revoked from them. Roles can be granted to and revoked from individual user accoun [...]

TiDB Operator Source Code Reading (I): Overview (from TiDB and TiKV Blog)

TiDB Operator is an operator for running TiDB in Kubernetes. This article will introduce its architecture and what value it brings to you. [...]

Monday, 22. March 2021

Architecting for Security: A Guide for MySQL (from SeveralNines Open Source Database Blog)

pSecurity is paramount today across the whole of IT. From time to time we hear about ransomware attacks or data leaks that have their origin in not secured databases or IT infrastructure. You may wonder: what are the best practices in architecting MySQL environment so you can feel secure about your data? If so, this blog is for you. Please keep in mind that we will not cover the topic fully - this [...]

Thursday, 18. March 2021

How to Connect C++ Programs to MariaDB (from MariaDB Corporation Blog)

An introduction to MariaDB Connector/C++ with simple examples demonstrating create, read, update, and delete (CRUD) interactions with data stored in MariaDB. [...]

Announcing General Availability of MariaDB Connector/C++ (from MariaDB Corporation Blog)

We are pleased to announce the general availability of MariaDB Connector/C++. This new connector complements our existing family of production-ready... Read more » [...]

Flex Your Tungsten Replicator: Two New Roles (from Continuent Blog)

pIn this blog post, we explore how the two new Tungsten Replicator roles allow for THL transfer when not actively extracting or applying events. This new behavior provides for better control and performance under a variety of conditions./p Tags: Transaction History Log (THL) [...]

Disaster Recovery for Galera Cluster Deployed to a Hybrid Cloud (from SeveralNines Open Source Database Blog)

pRunning a Galera Cluster in a hybrid cloud should consist of at least two different geographical sites, connecting hosts in the on-premises or private cloud with the ones in the public cloud. Whether you use unbreakable private cloud or public cloud platforms, Disaster Recovery (DR) is indeed a key issue. This is not about copying your data to a backup site and being able to restore it, this is ab [...]

Wednesday, 17. March 2021

How Replication Between MySQL & Kafka Works: Replicating Data in Real-Time from MySQL, MariaDB or Percona Server to Kafka (from Continuent Blog)

pRead this blog to learn about replication between MySQL and Apache Kafka: what it’s all about, how it works, and the tools to use to make it work smoothly./p Tags: MySQLreplicationreal-timeapache kafkatungsten replicatoramazon marketplacezookeeper [...]

MariaDB Galera Cluster with Corosync/Pacemaker VIP (from Shinguz's Blog)

pSometimes customers want to have a very simple Galera Cluster set-up. They do not want to invest into machines and build up the know-how for load balancers in front of the Galera Cluster./p pFor this type of customers there is a possibility to just run a VIP controlled by Corosync/Pacemaker in front of the Galera Cluster moving an IP address from one node to the other. But this is just an active/ [...]

Database Encryption: Why and Where You Need to Have Data Encryption (from SeveralNines Open Source Database Blog)

pDatabase encryption provides enhanced security for your at rest and in transit data. Many organisations have started to look at data encryption seriously with recent security breach cases. In most cases, database servers are a common target for attackers because it holds the most valuable asset for most organisations. Once an intruder has gained access to valuable data from your server, chances ar [...]

The problem with MySQL foreign key constraints in Online Schema Changes (from Shlomi Noach Blog)

This post explains the inherent problem of running online schema changes in MySQL, on tables participating in a foreign key relationship. We’ll lay some ground rules and facts, sketch a simplified schema, and dive into an online schema change operation. Our discussion applies to pt-online-schema-change, gh-ost, and Vitess based migrations, or any other online schema […] [...]

Tuesday, 16. March 2021

Is a Database Just a Fancy Spreadsheet?!? (from PHP With MySQL)

p Want to make a data person groan?  Ask them if a database is just a fancy spreadsheet.  Then ask them to convert a spreadsheet to a database.  Add in that there are lots of funny calculations, odd cells, and company 'secret' formulas./pWhat is a Spreadsheet?pFor those of you who did not see the changes brought early personal computer spreadsheet software packages like VisiCalc [...]

Designing a Thread Pipeline for optimal database throughput with high IPC and low CPU cache misses (from Mikael Ronstrom)

p There are a couple of questions about the blog post on automatic thread configuration in RonDB. Rather than providing an extensive answer in the comment section I thought it was better to answer the questions in a separate blog. In addition I performed a set of microbenchmarks to verify my expectations./pbrpThe first question was the following:/pbrpScyllaDB also does something similar with e [...]

Poll: Which MariaDB Server version do you mainly run in production? (from MariaDB Foundation Blog)

pOur second poll aims to get to know you better by learning which version of MariaDB Server you primarily use in production. This helps us shift our priorities according to your needs and establish goals that align better with the popularity of the versions. … /p pContinue reading \"Poll: Which MariaDB Server version do you mainly run in production?\"/p pThe post Poll: Which MariaDB Server ve [...]

MySQL Transaction Scope (from MacLochlainns Weblog)

The idea of ACID transactions are a basic feature of SQL’s individual Data Manipulation Language (DML) commands, like the INSERT, UPDATE, and DELETE statements. Transactions across two or more tables are a natural extension of ACID compliance features provided by DML commands. However, they require a structured programming approach, like a store procedure or like […] [...]

The DevOps Open-Source Database Audit Manual - Everything You Should Know (from SeveralNines Open Source Database Blog)

pAuditing is the monitoring and recording of selected user database actions. It is typically used to investigate suspicious activity or monitor and gather data about specific database activities. For example, the database administrator can gather statistics about which tables are being updated, how many operations are performed, or how many concurrent users connect at particular times./p pIn this [...]

TiDB Hackathon: Reducing Cross-AZ Data Transfer Costs by 89% (from TiDB and TiKV Blog)

At TiDB Hackathon 2020, the Pingtouge team focused on reducing TiDB's cross-AZ data transfer costs on the cloud. They managed to reduce read traffic by 89% and write traffic by 15%. [...]

Monday, 15. March 2021

Installing Galera 4 with MySQL 8 on Ubuntu 20.04 (from Galera Blog)

A question has cropped up recently: how does one install Galera Cluster 4 with MySQL 8 on Ubuntu 20.04 LTS (Focal Fossa)? This quick guide will get you started. Install 3 Galera Cluster nodes with the base OS being Ubuntu 20.04. Remember to run apt update and apt upgrade. Once this is done, edit: /etc/apt/sources.list.d/galera.list […] [...]

Saturday, 13. March 2021

Sequential IO and an LSM tree (from Small Datum)

pI see statements that sequential IO is a benefit of using an LSM tree. That is a vague and truthy statement. It is correct that the writes done by compaction are sequential per-file. But I am interested in the IO from the perspective of the storage device. /ppThe truthier claim is that with an LSM there will be many streams of IO (read & write) that benefit from large IO requests. The rea [...]

6 Step MySQL Point-In-Time recovery on AWS RDS (from Mydbops Blog)

Recently one of our customers ran into an issue, wherein a bad actor(code) from the application had made the wrong update to 16 M records of a critical table in the database, causing the entire production process to go down. The application Team was able to find the bad actor and block it, our Remote … Continue reading 6 Step MySQL Point-In-Time recovery on AWS RDS → [...]

Friday, 12. March 2021

Memory saturated MySQL (from Die wunderbare Welt von Isotopp)

p»If at all possible, we build databases so that the working set of the database fits into memory.« What does that even mean?/p Working Set pIn computer science, the “Working Set” of a program is the set of things it will be accessing in the near future. Because computer science has not yet solved looking into the future, we are looking at the set of things we accessed most recently and hope for [...]

Google Summer of Code 2021 (from MariaDB Foundation Blog)

pGood news, for you and for us: We have been approved for this year’s edition of Google Summer of Code!br What is Google Summer of Code? … /p pContinue reading \"Google Summer of Code 2021\"/p pThe post Google Summer of Code 2021 appeared first on [...]

Database Security 101: Security in Open Source Databases (from SeveralNines Open Source Database Blog)

pData security is one of the most significant aspects of administering a database. Depending on the organizational structure, if you are managing the production database, you must monitor for unauthorized access and usage. This also applies to the underlying host. In this blog we are going to explain security in open source databases./p General Security pAfter installing the database software, we [...]

Webinar Summary: Migrate your EOL MySQL Servers (from Mydbops Blog)

This brief summarises the proceedings and outcomes of the 2nd MyWebinar which was held on 13th February 2021 at Online Webinar. As part of our thought leadership webinar series, our latest hosting webinar Migrate your EOL MySQL Servers (seamless migration to MySQL group replication / InnoDB cluster) We have conducted MyWebinar with a very positive … Continue reading Webinar Summary: Migrate y [...]

Thursday, 11. March 2021

Oxygen XML Editor (from MacLochlainns Weblog)

Somebody asked me about how they could convert an XML file to a CSV file to upload into MySQL. They were asking the question based on an old Convert XML to CSV blog post from 2008. Amazing though that is, I had to explain the process no longer requires manual tasks, like calling Java files […] [...]