Whats new in NDB Cluster 7.5 version (Contd.)
In cluster 7.5 the READ_BACKUP and FULLY_REPLICATED table
features were added. These features are both designed to improve
read performance and scalability, and can be set on a per-table
basis. These features are fully implemented inside MySQL
Cluster, and tables using these features support all of the
normal MySQL Cluster features - secondary unique and ordered
indexes, foreign keys, disk resident columns, replication etc.
The read performance improvements do not require any special
effort to take advantage of – MySQL Cluster automatically chooses
the most efficient way to execute reads, whether issued over
NdbApi, or via SQL, executed in MySQLD or pushed down for
parallel execution in the data nodes.
READ_BACKUP:
Prior to 7.5, all Committed Read operations were routed to a
primary replica of the table or index fragment to be read. The …
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.
The first question was the following:
ScyllaDB also does something similar with execution stages for better instruction cache. Is this similar to what you're implementing for instruction cache on separating the threads?
The second question is:
I don't really get the functional separation of threads. To execute a query, your data will now go through a pipeline of …
[Read more]
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 API implemented in an imperative
language.
Surprisingly, transaction management wasn’t covered well in Alan Beaulieu’s Learning SQL because he only provided pseudo code logic. While I thought troubleshoot some broken MySQL SQL/PSM logic would be a good learning experience for students, it wasn’t. So, I wrote this sample code to show how to achieve an all or nothing transaction across four tables.
The code for this example on transaction management lets you perform the important tasks necessary to effect transaction …
[Read more]
Up until now we have seen MDS (MySQL Database Service) and MySQL
in Azure.
As the Cloud technology keeps moving fast, I thought it would be
a good idea to see how to set up a MySQL in Amazon , as a
service, that is RDS.
The post MySQL in Amazon (RDS) first appeared on dasini.net - Diary of a MySQL experts.
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 and add the following lines:
deb https://releases.galeracluster.com/galera-4/ubuntu focal main
deb https://releases.galeracluster.com/mysql-wsrep-8.0/ubuntu focal main
Once that is done, don’t forget to also pin the preference to the Galera Cluster repository. To do this, edit: /etc/apt/preferences.d/galera.pref and have it read:
# Prefer the Codership repository
Package: *
Pin: origin releases.galeracluster.com
Pin-Priority: 1001
Once you are done, run apt update yet again. Now you are ready to install Galera Cluster 4 with MySQL 8, just by …
[Read more]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 DBA was involved in the Data Recovery/Rollback.
Here I would like to discuss possible recovery methods for the above said scenario
Delayed Slave:
A simple and effective way to recover is by using a delayed slave, RDS started supporting this feature from version 5.6.40 and 5.7.22 i.e., you can induce a SQL thread delay-interval for applying the writes to a slave, detailed implementation is covered in our blog here. It’s …
[Read more]»If at all possible, we build databases so that the working set of the database fits into memory.« What does that even mean?
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 into the future, we are looking at the set of things we accessed most recently and hope for The Best™.
The Best™ here being that our future access pattern is very similar to our most recent past access pattern.
In MySQL, the “things we access” in the Working Set definition is RAM, Memory.
We do care, because memory is fast. How fast is fast?
Images from …
[Read more]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 response with the help of software like zoom hosting arrangement and YouTube streaming and commitment of our business team, We have easily planned the perfect broadcasting for all of the attendees.
Over 30+ people took part in our webinar on 13th Feb 2021, to learn MySQL EOL and upgrade path. The session “Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster With Zero Downtime” by …
[Read more]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 from the Apache XML Project. All they needed to do was use the Oxygen XML Editor, which is why I wrote this blog post.
For example, I had them use the same sample XML file from the old
blog post (shown below) with one change. The
encoding value needs to change from
latin1 (ISO-8859-1) to unicode
(UTF-8). Then, they should put it into a local
Windows directory (mine went into the …
When you migrate to MySQL Database Service on Oracle Cloud Infrastructure (MDS on OCI), the easiest, fastest and recommended way it to use MySQL Dump & Load Utility.
For more information check these different links:
- https://mysqlserverteam.com/mysql-shell-dump-load-part-1-demo/
- https://mysqlserverteam.com/mysql-shell-dump-load-part-2-benchmarks/
- https://mysqlserverteam.com/mysql-shell-dump-load-part-3-load-dump/
- …