Run and operate MariaDB in Kubernetes with mariadb-operator

The introduction of the StatefulSet resource was a game changer when it comes to run stateful workloads in Kubernetes, introducing a wide range of features, including:

  • Predictable DNS names for each Pod, allowing one to individually address them in the network.
  • Stable persistent storage for each Pod, ensuring that each of them is bound to the same PersistentVolumeClaim.
  • Ordered graceful deployments and automated rolling updates.

However, this isn’t quite enough for running databases in Kubernetes in a reliable way. We are missing day 1 and day 2 operations, such as configuring high availability and scheduling backups, which is something not managed by vanilla Kubernetes.

Sauron says to Dumbledore and Merlin…

This sounds like a lame cross-genre joke, but it is not. It is a lame cross-genre math problem. I have to admit, it didn’t have those names when I read about it, but I wanted to make it a bit more epic. So,

Sauron says to Dumbledore and Merlin, finally I have captured you both. Now I shall select two numbers, greater than one, less than a hundred. Dumbledore shall know their product and Merlin shall know their sum. If you, fools, will be able to tell me the numbers I have chosen, I shall let you free.

Connect SE JDBC table type: Accessing Tables From Another DBMS

In this blog we will show how to access MySQL and MariaDB DBMS tables from MariaDB Server. For that we will use Connect Storage Engine (SE), which supports different table types options. In this case we will use the JDBC table type. To use the JDBC table type we need to specify it in the CREATE TABLE definition for Connect SE and we need the Java connector for the DBMS we are accessing. For demonstration purposes we will use containers, but this will work if the servers are running in VMs or bare-metal. Just make sure the machines can access each other via TCP/IP.

Data migration from Oracle to MariaDB with Docker and Connect SE: A Step-by-Step Guide

In this blog we are going to learn how to migrate data from Oracle to MariaDB.

To begin, we’ll learn the basics about Oracle database to have an understanding about the steps that are done on the demo example. After, we will create a table in Oracle and migrate it to MariaDB.

To migrate data from Oracle there are 2 ways:

  1. Dump Oracle data to CSV and load data in MariaDB.
  2. Use the Connect Storage Engine to create or insert into a table from Oracle’s source definition.

For demonstration, we are going to use a docker container with an Oracle Express Edition (XE) image.

Ask ChatGPT: MariaDB Performance Tuning: Tips and Tricks

This is the next in the series of posts exploring ChatGPT and its insights about MariaDB. The series began with ChatGPT, OpenAI and MariaDB Foundation, followed by Ask ChatGPT – Getting Started with MariaDB: A Comprehensive Guide for Beginners.

This week’s topic, suggested by ChatGPT itself, was “MariaDB Performance Tuning”. So how did it do?

MariaDB is undoubtedly one of the most popular open-source database management systems available today, with a strong focus on performance and ease of use. Whether you are a developer, database administrator, or an IT professional, ensuring that your MariaDB installation performs efficiently is crucial.

Ask ChatGPT – Getting Started with MariaDB: A Comprehensive Guide for Beginners

This is the next in a series of posts on our explorations with ChatGPT that started with ChatGPT, OpenAI and MariaDB Foundation. Here, we asked ChatGPT to generate a blog post, and Chief Innovation Officer Daniel Black reviewed the results.

“Getting Started with MariaDB: A Comprehensive Guide for Beginners” is the question we asked ChatGPT. What we got is below. Rather than a blog on what you could have done yourself, I’ll look through the answer below and see how accurate it is, what could be better/worse, and assume this is some reflection on the references that the engine was trained on.

ChatGPT, OpenAI and MariaDB Foundation

When everybody and their grandmother are talking about ChatGPT, you know something is happening – something with significance outside the usual IT bubble. As the first in a series of blog entries, let me reflect upon what AI means for users of MariaDB Server – or, at least, what implications we at the MariaDB Foundation can see at this point in time.

The AI revolution is inevitable …

Pundits say that lawyers or programmers won’t be replaced by AI – but they will be replaced by lawyers or programmers that use AI. I would agree.

Writing User-Defined Functions in Rust

One of the most straightforward ways to add functionality to MariaDB or MySQL server instances is by creating a user-defined function (UDF). These are compiled functions loaded from dynamic binaries that can be much more performant and flexible than what can be written in SQL, providing the same capabilities as builtin functions.

These UDFs are typically written in C or C++, but a library is now available that makes it easy to write them in Rust. This blog discusses some of the reasoning for writing this library, followed by a very basic usage example that doesn’t require any experience with the language.