In the previous blog, MariaDB & K8s: Create a Secret and use it in MariaDB deployment, we used the Secrets resource to hide confidential root user data, and in the blog before that in the series, MariaDB & K8s: Communication between containers/Deployments, we created 2 containers (namely MariaDB and phpmyadmin) in a Pod. That kind of deployment didn’t have any persistent volumes.
In this blog we are going to create separate Deployments for MariaDB and WordPress applications as well as a Service for both in order to connect them. Additionally we will create Volume in a Pods of a MariaDB Deployment.
…
Continue reading “MariaDB & K8s: Deploy MariaDB and WordPress using Persistent Volumes”
In the previous blog we created a stateless application, deployed it with K8s resource Deployment, and exposed the root password, which, regarding security, is of course not recommended. K8s allows one to hide confidential data using specific K8s resources.
Let’s see how to use Secrets in K8s.
Secrets in K8s
In order to save confidential data one can use a K8s resource called Secret.
One can create Secret from the CLI by running kubectl create secret.
Here we will use two methods to create the secret.
…
Continue reading “MariaDB & K8s: Create a Secret and use it in MariaDB deployment”
Seppo Jaakola is going to present the topic “MariaDB Galera Cluster Security” at the Security MariaDB Server Fest (Wed 6 April 2022).
I’m currently watching his talk. Let me share with you some details. Seppo is not talking about native MariaDB security features that are by default supported by Galera, but due to the distributed cluster topology additional security related measures are needed. He talks about cluster topology, cluster communication security, Galera enhancement Data at REST encryption and the new 10.9 feature Node screening by IP Allowlist.
Do you have questions to ask Seppo?
…
Continue reading “Quick peek: MariaDB Galera Cluster Security talk”
In the previous blog, a background Deployment resource was created from a YAML file, consisting of a single container (MariaDB) that acts as a background container.
In this blog we are going to proceed to create the frontend container to communicate with the backend through a Service and other resources.
About Services
When an application is run through the Deployment Pods are created and destroyed dynamically. When created, they get the internal IP address in a cluster, and since they are ephemeral, there needs to be a stable way to allow communications between Pods.
…
Continue reading “MariaDB & K8s: Communication between containers/Deployments”
SHOW ANALYZE
If you ever had to do query performance troubleshooting with MariaDB, you should be
familiar with MariaDB’s ANALYZE for statements feature. It does what EXPLAIN ANALYZE does in some other database systems: ANALYZE query runs the query and produces EXPLAIN output, amended with the data from the query execution:
FROM orders, customer
WHERE
customer.c_custkey = orders.o_custkey AND
customer.c_acctbal < 0 AND
orders.o_totalprice > 200*1000
+—-+————-+———-+——+—————+————-+———+——————–+——–+——–+———-+————+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | r_rows | filtered | r_filtered | Extra |
+—-+————-+———-+——+—————+————-+———+——————–+——–+——–+———-+————+————-+
| 1 | SIMPLE | customer | ALL | PRIMARY,…
…
Continue reading “10.9 preview feature: SHOW ANALYZE and EXPLAIN FOR CONNECTION support”
Things happen, schedules change. I don’t want to bother you with details, so you’ll have to take my word for it: Events related to Russia invading Ukraine have caused us to delay our Security themed MariaDB Server Fest with a week, from Wed 30 March to Wed 6 April 2022.
This is probably the mildest of the consequences of the ongoing war. Nonetheless, we apologise for the inconvenience.
…
Continue reading “Delaying Server Fest until Wed 6 April 2022”
The MariaDB 10.9 preview releases introduce a MySQL compatibility syntax extension, range notation. The ‘last’ keyword was added in JSON path expression, as requested in MDEV-22224 and MDEV-27911. Additionally, negative indexes are now also supported. Range notation, implemented using the ‘to’ keyword, and the ‘last’ keyword, is basically an array element selector.
Syntax:
Range notation:
[M to N] selects a range of elements starting from index M to N.
Last keyword:
[last-N] / [last] selects the Nth from last element, and last element, respectively.
…
Continue reading “10.9 preview feature: JSON path expression and JSON_OVERLAPS()”
We are pleased to announce the third MariaDB series release under the new release model, MariaDB 10.9.0.
Maturing MariaDB more quickly
One of the purposes of the new model is to get features into the hands of users more quickly, in a form which supports stability by allowing the new feature to be more easily tested, separate from other new features being developed at the same time.
Candidate features for MariaDB 10.9
There are four separate preview releases, containing the following features under consideration for release in 10.9.1:
SHOW ANALYZE FORMAT=JSON
- Extend SHOW EXPLAIN to support SHOW ANALYZE [FORMAT=JSON] (MDEV-27021)
- Add EXPLAIN FOR CONNECTION syntax support to SHOW EXPLAIN (MDEV-10000)
JSON Range Notation
- Implement range notation for JSONPath (MDEV-27911)
- Support JSONPath negative index (MDEV-22224)
- JSON_OVERLAPS function (MDEV-27677)
Async redo log write
- Asynchronous redo log write (MDEV-26603)
Miscellaneous
- Implement the –do-domain-ids, –ignore-domain-ids, and –ignore-server-ids options for mysqlbinlog (MDEV-20119)
- information_schema.tables.table_type now shows TEMPORARY
for local temporary tables.
…
Continue reading “MariaDB 10.9 preview releases now available”