Early on in the MySQL 8.0 Release series there were a couple of key items related to our everyday use. They are MySQL-Shell‘s establishing the “Pluggable Password Store” in 8.0.12, and its super enhance API Command Line Interface in 8.0.13… which the Pluggable Password Store also adopted. Sadly, most content highlighting the API CLI capability when it came… Read More »
Why Debug MySQL?
Building MySQL from its source code sounds like something you won't normally do, though it can be useful for several scenarios:
- When you want to contribute to MySQL with a new feature or a bug fix.
- When you want to explore how MySQL or the underline engines behave, beyond what's documented.
- When you're considering to fork MySQL for your work and customize it in your own repository.
- When you want to create a custom MySQL build with custom build parameters or compiler optimizations.
For us at EverSQL, it's reason #2.
To improve our query optimization algorithms, we're constantly exploring the database's source code, to learn how the database operates, beyond what's actually documented, and how can our product complement the database's core functionality.
In this tutorial, you'll learn …
[Read more]It’s the in-between term time and we’re all stuck at home. I decided to update the image for my Fedora 30 virtual machine. I had a work around to the update issue that I had encountered last October in Bug #96969 but it was not required with the current version. However, after updating from MySQL 8.0.17 to MySQL 8.0.19, I found that my Java connection example failed.
The $CLASSPATH value was correct:
/usr/share/java/mysql-connector-java.jar:.
The first error that I got was the my reference to MySQL JDBC driver was incorrect. The error message is quite clear:
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. Cannot connect to database server: The server time zone …[Read more]
In this post, I want to evaluate Group Replication Scaling capabilities in cases when we increase the number of nodes and increase user connections. While this setup is identical to that in my post “Evaluating Group Replication Scaling Capabilities in MySQL”, in this case, I will use an I/O bound workload.
For this test, I will deploy multi-node bare metal servers, where each node and client are dedicated to an individual server and connected between themselves by a 10Gb network.
Also, I will use 3-nodes and 5-nodes Group Replication setup. In both cases, the load is directed only to ONE node, but I expect with five nodes there is some additional overhead from replication.
Hardware specifications:
System | Supermicro; SYS-F619P2-RTN; v0123456789 (Other) Service Tag | …[Read more]
Recently, we were affected by an ignored configuration option introduced in MySQL 5.6. This incident caused us to perform extended planning of downtime and the rebuilding of the slave. In…
The post Still have MySQL 5.6 variable binlog_error_action as IGNORE_ERROR? first appeared on Change Is Inevitable.
The backup and restore of a complete database is an extensive exercise. But what if you need to restore just one table which has been mistakenly modified by an incorrect query? Help is at hand with Percona XtraBackup.
For our purpose, we will take a test database having tables created by the sysbench tool. The 8.0 versions of Percona XtraBackup and Percona Server for MySQL have been used in this test.
Restore Single Table
Here we will take the backup of the sbtest2 table and restore it. The initial checksum of the table is given below:
8.0.19>CHECKSUM TABLE sbtest2; +--------------+-----------+ | Table | Checksum | …[Read more]
This is our third ‘multi-master MySQL’ blog in our Continuent MySQL Use Case series, with a focus on Telco providers. This blog concludes our multi-master MySQL mini-series along with the following two blogs:
- Multi-master MySQL for e-Commerce Sites
- Geo-distributed Multi-master MySQL for Financial Services SaaS Providers
As per our initial multi-master MySQL use case blog, multi-master replication for MySQL typically means that a user can write to any master node knowing that the write will be eventually consistent for …
[Read more]This use case blog discusses a Telco provider that specializes in roaming, i.e. complete connectivity solutions around the world. It is our third ‘multi-master MySQL’ blog in our Continuent MySQL Use Case series.
Tags: Geo-Distributed Multi Master MySQL MySQL Replication telco telecommunications tungsten clustering
Last Tuesday, it was the very first session of DB AMA, Morgan Tocker made a nice presentation of MySQL Performance_Schema and illustrated it with some nice queries to get Meta et Data Locks.
As those queries were not that simple to write or at least to remember, I thought it might be a good idea to add them to MySQL Shell, the best MySQL DBA Tool !
I’ve then added a new method to the check plugin:
getLocks().
Let’t see it in action:
As you can see, this is a small extension that can offers you a better view of what’s locked per transaction.
You can find several MySQL Shell Extension directly on github: …
[Read more]Then secretary of Defense Donald Rumsfeld popularized the terms: “known knowns”, “known unknowns”, and “unknown unknowns.” With the ever-increasing number of data breaches and vulnerabilities, database operation teams have to account for every possibility. Visualizing your audit data allows you to look for the “unknowns”, those access patterns or connections that you’d otherwise overlook.
Although enabling an audit log and shipping it off to a vault may meet security and regulatory requirements, you will lose an important opportunity to protect your customer and employee information.
The following dashboard demonstrates the type of information that audit logs can reveal:
- Who is connecting to my database (IP address, location, username..)
- Who is trying to connect to my database but getting access errors?
- Which tables are being accessed and by whom? …