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]I'm very excited to announce that some of my content is featured in the PHP Learning Path from O'Reilly. The Learning Paths are a good way to buy a bundle of content from different people on related topics, and the introductory pricing is always a good deal! Their newest offering is the PHP Learning Path, which has a video course on PHP and MySQL, my intermediate PHP Video course (they wouldn't let me call it "all the things Lorna thinks PHP developers need to know" unfortunately!) and also my video course Git for Web Developers which has a bunch of PHP in it as well as my best git tips and tricks.
I think it's a pretty well-rounded collection and it's only $99 for a couple of weeks, so get the PHP Learning Path here and let me know what you think?
…
[Read more]When changing a MySQL table or column to a new character set that uses more bytes than the old character set, you need to first check if any schema changes are needed to accomodate the change. For example, changing character sets from latin1 to utf8 is an increase from 1 to 3 bytes, and changing from utf8 to utf8mb4 is an increase from 3 to 4 bytes. The MySQL reference manual has a helpful page with some details on this, but I want to add some examples to show how this schema prep can be accomplished.
There are three different types of length limits to take into consideration:
- Index
- Column
- Row
In this post I will focus on index length limits, and I'll save columns and rows for future posts. Read on for details.
Index Length Limits
The specific limits depend on …
[Read more]In two earlier posts, I gave some examples on how to use Perl to send tweets stored in a MySQL database to Twitter, and then how to automatically reply to your retweets with a “thanks”. In this post, I will show you how to automatically download your direct messages from Twitter, store the messages in a MySQL database, and then delete them.…
Last week, I was pleased to present at Percona Live Amsterdam 2015 regarding the importance of Performance Schema and how to begin approaching visualizing the data that is available to diagnose performance issues and fine tune your MySQL environment. You can download the slides from the Percona Live conference page.
The session highlighted using the ELK (Elasticsearch+Logstash+Kibana) stack to assist visualizing event data, in addition to graphite+graphana to visualize time-series data.
As many people who attend conferences are aware, the availability of internet access is sketchy at best. To combat this, the visualization stack that I created was strictly local utilizing Docker, specifically the Docker Toolbox.
The docker-compose.yml …
[Read more]
BT’s retail arm Expedite uses ClusterControl platform to
scale MySQL and achieve agility on BT Cloud
Stockholm, Sweden and anywhere else in the world - 30 September
2015 - Severalnines, the provider of database automation
and management software, today announced its latest customer,
BT
Expedite, BT’s specialist retail arm hosting its customers’
eCommerce applications and omni-channel marketing operations.
Expedite helps 100 leading retailers in 170 countries worldwide, including some of the largest UK retail chains such as Primark, WHSmith, Warehouse and Jigsaw deliver effective customer service online by offering end-to-end IT managed services. As customers are going online first to search, select and purchase goods, the modern day retail store needs an IT system which can manage …
[Read more]