Percona recently open sourced TokuBackup, a library that may be used to take a
snapshot of a set of files while these files are being changed by
a running application like MySQL or MongoDB. Making
TokuBackup open source allows a larger set of users to improve
and extend the software. This blog describes how the
Address Sanitizer and Thread Sanitizer found bugs in the TokuBackup
library.
The TokuBackup library is used by Percona Server for MySQL and …
Is it possible to make my non secured installation to secure installation? As system already in production.
Percona Live Europe is now more than a week away. l left
Amsterdam with a positive thought: it has been the best European
event for MySQL so far. Maybe the reason is that I saw the
attendance increasing, or maybe it was the quality of the talks,
or because I heard others making the same comment, and I also saw
a reinvigorated MySQL ecosystem.
There are three main aspects I want to highlight.
1. MySQL 5.7 and the strong presence of the Oracle/MySQL
team
There have been good talks and keynotes on MySQL 5.7. It is a
sign of the strong commitment of Oracle towards MySQL. I think
there is an even more important point. The most interesting
features in 5.7 and the projects still in MySQL Labs derive or
are in some way inspired by features available from other
vendors. Some examples:
- The JSON datatype from …
MySQL Group Replication plugin is in labs.mysql.com and is available for EL6 x86_64 version Linux. But most of us have Ubuntu desktops where it should be easier to test this new thing, especially with MySQL Sandbox. After getting source code we should have compile this plugin with MySQL from source. So let’s begin. Extract both mysql group replication archive and mysql source archive:
sh@shrzayev:~/Sandboxes$ ls -l
total 650732
drwxr-xr-x 34 sh sh 4096 İyl 20 17:25 mysql-5.7.8-rc
-rw-rw-r-- 1 sh sh 49762480 Avq 20 16:19 mysql-5.7.8-rc.tar.gz
drwxrwxr-x 3 sh sh 4096 Sen 28 12:08 mysql-group-replication-0.5.0-dmr
-rw-rw-r-- 1 sh sh 251687 Sen 28 11:57 mysql-group-replication-0.5.0-labs.tar.gz
You will have 2 directories as above. Then, go to mysql-group-replication folder:
sh@shrzayev:~/Sandboxes$ cd mysql-group-replication-0.5.0-dmr/
sh@shrzayev:~/Sandboxes/mysql-group-replication-0.5.0-dmr$ …[Read more]
see below.
You should install “libhiredis-dev” before run ./configure.
Trye
Introduction
The purpose of this test is to benchmark MySQL 5.6 performance on hardware with Haswell CPUs, SSDs and PCIe Flash storage devices.
Background
Software
- SysBench OLTP workload installed on the database
machine
- MySQL 5.6.24 distribution from Percona
- jemalloc used for MySQL Server and Sysbench test client
- Charts are plotted using MySQL Performance Analyzer
Method
- Data and software on server was wiped out post every test
run.
- Predefined number of tables - 16 or 64
- Predefined size of rows - 20M per table
Tests
Read Only
Read Write
Concurrencies vary from 1 to 512 with incremental increase
EXT4 vs XFS
…
[Read more]
The sort buffer, which is controlled by the
sort_buffer_size setting, is probably one of the
most-discussed MySQL settings. Interestingly, in many cases it
has a lot less potential to help performance than to hurt it, so
configuring it is often about avoiding trouble rather than
gaining a lot of performance.
The variable controls the size of a buffer that’s created whenever MySQL has to sort rows. It is per-query, meaning each query gets its own buffer, and it’s allocated to its full size, not as-much-as-needed. This makes large settings potentially dangerous.
The worst abuse of this variable we’ve seen came from a server that was tuned with a script. The script relied on a naive formula that looked at a simplistic ratio of some server variables. Due to the server’s workload the script was never satisfied and continually suggested increasing this variable, which eventually was set to 1GB. The effect was that …
[Read more]Capturing data is a critical part of performing a query analysis, or even just to have an idea of what’s going on inside the database.
There are several known ways to achieve this. For example:
- Enable the General Log
- Use the Slow Log with long_query_time = 0
- Capture packets that go to MySQL from the network stream using TCPDUMP
- Use the pt-query-digest with the –processlist parameter
However, these methods can add significant overhead and might even have negative performance consequences, such as:
…[Read more]An index is a data structure that sorts a number of records on one or more fields, and speeds up data retrieval. This is to avoid scanning through the disk blocks that a table spans, when searching through the database. So, what kind of indexes are available in MySQL and how do we use them to get the most performance? This will be the topic for this blog.
This is the twelfth installment in the ‘Become a MySQL DBA’ blog series. Our previous posts in the DBA series include Deep Dive pt-query-digest, Analyzing SQL Workload with pt-query-digest, …
[Read more]