oli's blog

Performance Tuning Key for MySQL

Taxonomy upgrade extras: 

This MySQL Performance Tuning Key should give you a guide how to best tune you MySQL database systematically… It should also work similar for other RDBMS.




Hunting the core

Taxonomy upgrade extras: 

Core files under Linux

When dealing with MySQL crashes it is very useful to get the core files for further debugging. I have collected all the informations I found about it and wrote it together here:




Reading other processes memory

Taxonomy upgrade extras: 

As you probably have experienced yet MySQL does not always provide all internal information as you might want to have them and as you are used to have from other RDBMS.




MySQL Monitoring solutions

Basic solutions (CLI)

Those solutions are run from the command line (CLI):




FromDual sitemap

Performance Tuning, Benchmarking, Capacity Planning and Monitoring

MySQL Database Health Check for MySQL/MariaDB




Profiling MySQL with oprofile

Taxonomy upgrade extras: 

Why is is data load with LOAD DATA INFILE so much faster?







MySQL Federated Storage Engine

What is a Federated Table?

A Federated Table is a table which points to a table in an other MySQL database instance (mostly on an other server). It can be seen as a view to this remote database table. Other RDBMS have similar concepts for example database links.




FromDual consulting tool collection

The following tools we use sometimes for our consulting engagements…




MariaDB and MySQL Benchmarking

Table of Contents

Database Benchmark

General Benchmarking Tools

  • Apache JMeter: To test performance on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more).
  • Gatling: Gatling is a highly capable load testing tool. It is designed for ease of use, maintainability and high performance.
  • Tsung: Open-source multi-protocol distributed load testing tool.
  • Slamd Java-based Distributed Load Generation Engine application designed for stress testing and performance analysis of network-based applications.
  • Grinder A Java load testing framework that makes it easy to run a distributed test using many load injector machines.
  • mysqlslap mysqlslap is a diagnostic program designed to emulate client load for a MySQL server and to report the timing of each stage. It works as if multiple clients are accessing the server.
  • bm
  • httperf
  • apachebench (ab)

CPU Benchmarking

Disk benchmarking

# bonnie -s 2047 -S 10000

Bonnie 1.4: File './Bonnie.12330', size: 2146435072, volumes: 1
Writing with putc()...         done:  20440 kB/s  89.7 %CPU
Rewriting...                   done:  18940 kB/s  18.3 %CPU
Writing intelligently...       done:  46256 kB/s  28.8 %CPU
Reading with getc()...         done:  18771 kB/s  82.1 %CPU
Reading intelligently...       done:  32549 kB/s  17.3 %CPU

              ---Sequential Output (nosync)--- ---Sequential Input-- --Rnd Seek-
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --10k (03)-
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU   /sec %CPU
master 1*2047 20440 89.7 46256 28.8 18940 18.3 18771 82.1 32549 17.3  183.6  1.5

with fsync




MySQL pluggable Storage Engines (SE)

One of the big advantages of MySQL is its concept of Pluggable Storage Engines. This means you can choose the most optimal Storage Engine for your needs. This also has a disadvantage: You have to know what you are doing…




FromDual - The MySQL consulting company goes operational today!

Taxonomy upgrade extras: 

Hello everybody,

One month earlier than planned we have the great pleasure to announce you that the company called FromDual goes operational today!




Presentations

The following presentations are available:

DateTitleLocationLang
September 2026PostgreSQL Daten retten (PDF, 952 kib)LinuxDay 2026, 26 September 2026, HTL Dornbirn, AustriaGer
November 2025MySQL Honeypot (PDF, 324 kib)DOAG 2025 Konferenz + Ausstellung, 18 - 20 November 2025, Nürnberg, GermanyGer
November 2024MySQL Performance Tuning (PDF, 791 kib), Was ist neu in MySQL 8.4? (PDF, 407 kib)DOAG 2024 Konferenz + Ausstellung, 19 - 21 November 2024, Nürnberg, GermanyGer
August 2024Was ist neu in MariaDB 11.4? (PDF, 271 kib)FrOSCon 2024, 17 and 18 August 2024, St. Augustin, GermanyGer
November 2023Das relationale Open Source Datenbank Ökosystem - IT strategische Gedanken (PDF, 496.4 kib)DOAG 2023 Konferenz + Ausstellung: 22 November 2023, Nürnberg, GermanyGer
November 2023MariaDB und MySQL HA Lösungen - Ein Datenbank-Quartett im Hochverfügbarkeitsvergleich (PDF, 30.2 kib)DOAG 2023 Konferenz + Ausstellung: 21 November 2023, Nürnberg, GermanyGer
November 2023Upgrade MySQL 5.7 Galera Cluster auf MySQL 8.0 (PDF, 132.7 kib)Galera Webinar, 17 November 2023, Webinar, DACHGer
May 2023Galera Cluster for MySQL and Master/Slave Replication (PDF, 300.1 kib)Datenbank-Tage 2023, 24 and 25 May 2023, virtual in Frankfurt, GermanyGer
May 2023MariaDB - aber sicher! (PDF, 1.1 Mib)Secure Linux Administration Converence (SLAC) 2023, 23 to 25 May 2023, Berlin, GermanyGer
September 2022Galera Cluster for MySQL and Master/Slave Replication (PDF, 223 kib), MySQL Point-in-Time-Recovery (PiTR) (PDF, 154 kib)DOAG 2022 Konferenz + Ausstellung, 20 to 23 September 2022, Nürnberg, GermanyGer
March 2022MariaDB Galera Cluster and M/S replication (PDF, 352 kib)Chemnitzer Linux-Tage, 12 and 13 March 2022, virtual in Chemnitz, GermanyGer
February 2022MariaDB Connection ID (PDF, 301 kib), MariaDB Galera Cluster and M/S replication (PDF, 239 kib), MariaDB Point-in-Time-Recovery (PDF, 168 kib)FOSDEM 2022, 5/6 February 2022, virtual in Brussels, BelgiumEng
November 2021MySQL Security (PDF, 266 kib)DOAG 2021 Conference and Expo, 16 - 18 November 2021, virtual in Nuremberg, GermanyGer
February 2021Mariabackup - too rarely used (PDF, 226 kib)FOSDEM 2021, MariaDB devroom, 6/7 February 2021, Brussels, remote, BelgiumEng
December 2020MariaDB and MySQL for Web Developers (PDF, 623 kib), ExamplesWeb Developer Congress 2020, 18 - 20 December 2020, remote, DACHGer
November 2020MariaDB / MySQL Stolperfallen - und wie komme ich da wieder raus? (PDF, 695 kib)DOAG Konferenz und Expo, 19 November 2020, remote in Nürnberg, GermanyGer
October 2020MariaDB / MySQL Stolperfallen und wie komme ich da wieder raus? (PDF, 768 kib)GNU/LinuxDay in Vorarlberg, 10 October 2020, Dornbirn (remote), AustriaGer
March 2020Migration Workshop PXC 5.5 to MariaDB 10.4 (PDF, 445 kib)Customer Event, March 2020, Paris, FranceEng
December 2019MariaDB 10.4 New Features (PDF, 443 kib)IT-Tage 2019, 9 - 12 December 2019, Frankfurt, GermanyGer
November 2019MariaDB 10.4 New Features (PDF, 399 kib)DOAG K + A 2019, 19 - 21 November 2019, Nürnberg, GermanyGer
November 2018MySQL 8.0 New Features (PDF, 393 kib), MariaDB 10.3 - MySQL with PL/SQL (PDF, 518 kib)DOAG K + A 2018, 20 - 22 November 2018, Nürnberg, GermanyGer
May 2018MariaDB 10.2 - New Features (PDF, 1.6 Mib)SLAC 2018, 7 - 9 May 2018, Berlin, GermanyGer
March 2018MariaDB 10.2 - New Features (PDF, 683 kib)Chemnitzer Linux-Tage 2018, 11 March 2018, Chemnitz, GermanyGer
November 2017MySQL Query Tuning (PDF, 2.2 Mib), MySQL Replication and GTID (PDF, 293 kib), Wenn rwx für ugo zu ungenau ist - SELinux und AppArmor (PDF, 291 kib)DOAG K + A 2017, 21 - 23 November 2017, Nürnberg, GermanyGer
August 2017Wenn rwx für ugo zu ungenau ist - SELinux und AppArmor (PDF, 303 kib)FrOSCon 2017, 19 - 20 August 2017, St.Augustin, GermanyGer
July 2017Wenn rwx für ugo zu ungenau ist - SELinux und AppArmor (PDF, 280 kib)Admin-Runde, 6 July 2017, Berlin, GermanyGer
March 2017Katastrophenschutz durch Backup - auch privat (PDF, 1.1 Mib), Wenn rwx für ugo zu ungenau ist - SELinux und AppArmor (PDF, 265 kib)Chemnitzer Linux-Tage 2017, 11 + 12 March 2017, Chemnitz, GermanyGer
December 2016MySQL/MariaDB für nicht-MySQL DBAs (PDF, 491 kib)IT-Tage 2016, 15 December 2016, Frankfurt, GermanyGer
November 2016MySQL Security für Oracle DBAs (PDF, 480 kib), MySQL HA vs HA (PDF, 358 kib), Einführung in das Tuning von MySQL (PDF, 421 kib), MySQL 5.7: JSON und GIS (PDF, 1.9 Mib)DOAG K + A 2016, 15 -17 November 2016, Nürnberg, GermanyGer
September 2016MySQL Database Scalability (PDF, 300 kib)Nextcloud Conference 2016, 16 - 22 September 2016, Berlin, GermanyEng
August 2016ClickHouse Column Store (PDF, 943 kib), Vergleich von Replikation und Galera Cluster (PDF, 633 kib), MySQL-Auswahl auch gegen die Distribution (PDF, 407 kib), Der DB-Backup ist gemacht - was nun? (PDF, 419 kib), MySQL 5.7, JSON und GIS (PDF, 1.3 Mib), MySQL 5.7: Migration und Sicherheit (PDF, 1.6 Mib)FrOSCON 2016, 20 - 21 August 2016, St. Augustin, GermanyGer
July 2016MySQL 5.7 New Features (PDF, 980 kib)DOAG Webinar, 8 July 2016, WebinarGer
June 2016MySQL für Oracle DBAs (PDF, 3.35 Mib), MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein? (PDF, 3.3 Mib)SOUG DAY 2016, 23 June 2016, Baden-Dättwil, SwitzerlandGer
June 2016Sicherheitsrelevante Änderungen (und einige andere) in MySQL 5.7 (PDF, 289 kib)SLAC 2016, 15 - 17 June 2016, Berlin, GermanyGer
May 2016MySQL für Oracle DBAs (PDF, 991 kib)DOAG 2016 Datenbank, 10 May 2016, Düsseldorf, GermanyGer
April 2016MySQL Servers Working as a Team - Replication or Galera Cluster (PDF, 631 kib)Open Source Data Center Conference (OSDC), 27 April 2016, Berlin, GermanyEng
March 2016RPM-Konventionen - ein moderner Turm von Babel (PDF, 384 kib)Chemnitzer Linux-Tage 2016, 20 March 2016, Chemnitz, GermanyGer
March 2016MySQL 5.7 New Features (PDF, 990 kib)CeBIT 2016, 14 March 2016, Hannover, GermanyGer
January 2016PERFORMANCE_SCHEMA and sys schema - What can we do with it? (PDF, 406 kib)FOSDEM 2016, 29/30 January 2016, Brussels, BelgiumEng
January 2016MySQL für Oracle DBA’s (PDF, 1.7 Mib), MySQL Backup/Recovery (PDF, 348 kib)DOAG Regionaltreffen Freiburg/Südbaden, 26 January 2016, Freiburg, GermanyGer
January 2016MySQL-Server im Teamwork - Replikation und Cluster (PDF, 631 kib)Admin-Runde, 7 January 2016, Berlin, GermanyGer
December 2015MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein? (PDF, 3.3 Mib)DOAG Regionaltreffen Nürnberg/Franken, 17 December 2015, Nürnberg, GermanyGer
November 2015MySQL Performance Tuningfür Oracle-DBA’s (PDF, 680 kib), Der Datenbank-Backup ist gemacht - was nun ? (PDF, 415 kib), MySQL-Server im Teamwork - Replikation und Cluster (PDF, 456 kib), Weltweite Produktionsdatenverwaltung mit MySQL-Replikation (PDF, 625 kib)DOAG Conference 2015, 17 - 19 November 2015, Nürnberg, GermanyGer
September 2015MySQL-Server im Teamwork (PDF, 395 kib), MySQL Replikation und Galera Cluster im ÜberblickDOAG Regionaltreffen München, 28 September 2015, Munich, GermanyGer
June 2015Der Datenbank-Backup ist gemacht - was nun? (PDF, 743 kib), Recovery testen und dann als Produktiv-Kopie nutzen, MySQL sicher aufsetzen und betreiben (PDF, 863 kib)SLAC 2015, 24 - 26 June 2015, Berlin, GermanyGer
April 2015MySQL für Oracle DBA’s (PDF, 890 kib)DOAG Regionaltreffen Stuttgart, 1 April 2015, Stuttgart, GermanyGer
March 2015MySQL Performance Tuning für Entwickler (PDF, 961 kib)Chemnitzer Linux-Tage 2015, 21/22 March 2015, Chemnitz, GermanyGer
March 2015MySQL für Oracle DBA’s (PDF, 1006 kib)SOUG GV 2015 + SIG, 19 March 2015, Baden-Dättwil, SwitzerlandGer
March 2015MySQL Performance Tuning für Entwickler (PDF, 755 kib)CeBIT 2015, 16 March 2015, Hannover, GermanyGer
January 2015MySQL Replikation - Die Eier legende Wollmilchsau? (PDF, 1.2 Mib)DOAG Webinar, 9 January 2015, WebinarGer
November 2014Konsolidieren von MySQL Landschaften (PDF, 438.0 kib), Backup und Point-in-Time-Recovery mit MySQL (PDF, 183.8 kib)DOAG Conference 2014, 18 - 20 November 2014, Nürnberg, GermanyGer
November 2014GTID Replication Implementation and Troubleshooting (PDF, 175.6 Mib)Percona Live London 2014, November 3-4, 2014, London, UK.Eng
September 2014High-availability with Galera Cluster for MySQL (PDF, 277 kib), Reading MySQL fingerprints (PDF, 161 kib), What is a Backup Good For? (PDF, 51 kib) & How to implement GTID Replication? (PDF, 99 kib)FromDual Company Meeting 2014, September 10 - 12, Barcelona, Spain/CataloniaEng
May 2014MySQL always-up with Galera (PDF, 438 kib)SLAC 2014, May 14 2014, Berlin, GermanyGer
May 2014High-availability with Galera Cluster for MySQL (PDF, 313 kib)LinuxTag 2014, May 10 2014, Berlin, GermanyGer
March 2014Need for Speed: MySQL Indexing (PDF, 1.1 Mib)CeBIT 2014, March 11 2014, Hannover, GermanyGer
November 2013MySQL Backup (PDF, 315 kib), MySQL Cluster with Galera (PDF, 297 kib)DOAG Conference 2013, November 10-12 2013, Nürnberg, GermanyGer
November 2013Need for Speed: MySQL Indexing (PDF, 977 kib)Percona Live London 2013, November 11-12, 2013, London, UKEng
October 2013Simple usage of Xtrabackup tool (PDF, 107.8 kib), Galera Cluster for MySQL (PDF, 325 kib)FromDual annual company Meeting, October 9, 2013, Leoforos Vravronos, GreeceEng
June 2013MySQL for Oracle DBAs (PDF, 331 kib)MySQL für Oracle DBAs, June 14 2013, OnlineGer
June 2013MySQL HA and Security (PDF, 719 kib)SLAC 2013, June 5 to 7 2013, Berlin, GermanyGer
May 2013MySQL Security (PDF, 295 kib), MySQL High-Availability (PDF, 244 kib)DOAG 2013 Datenbank, May 14 2013, Düsseldorf, GermanyGer
March 2013MySQL Performance Tuning (PDF, 633 kib)Frankfurter Datenbanktage 2013, March 13 to 15 2013, Oberems-Glashütten, GermanyGer
February 2012Synchronous multi-Master Replication for MySQL (PDF, 134 kib), MySQL Replication: New Features in 5.5 and 5.6 (PDF, 490 kib)DOAG SIG MySQL, February 27 2013, Munich, GermanyGer
November 2012Data Warehouse (DWH) with MySQL (PDF, 1.3 Mib), MySQL New Features 5.6 (PDF, 474 kib), MySQL Replication (PDF, 451 kib)DOAG Conference 2012, November 20-22 2012, Nürnberg, GermanyGer
August 2012We build a Data Warehouse with MySQL (PDF, 1.3 Mib)FrOSCon 2012, August 25-26 2012, St. Augustin, GermanyGer
March 2012MySQL Configuration - the most important parameters (PDF, 727 kib), Indexing with MySQL (PDF, 520 kib)DOAG SIG MySQL - Performance, March 13 2012, Wiesbaden, GermanyGer
February 2012New Features in MySQL 5.6 (PDF, 459 kib), MySQL synchronous replication in practice with Galera (PDF, 176 kib)FOSDEM 2012 at MySQL and Friends Devroom, February 5 2012, Brussels, BelgiumEng
December 2011HandlerSocket und ähnliche Architekturen, NoSQL für MySQL (PDF, 524 kib)Internet Briefing Developer Conference 2011, December 8 2011, Zürich, SwitzerlandGer
December 2011MySQL Architectures for Oracle DBA’s (PDF, 700 kib), Practical MySQL Tuning (PDF, 796 kib)UK Oracle User Group (UKOUG) Conference 2011, December 5-7 2011, Birmingham, UKEng
November 2011MySQL Performance Tuning (PDF, 811 kib), MySQL Replication for Beginners (PDF, 503 kib)DOAG Conference 2011, November 15 - 17 2011, Nürnberg, GermanyGer
October 2011Various MySQL High Availability (HA) Solutions (PDF, 234 kib)Percona Live MySQL Conference, October 24 - 25 2011, London, UKEng
August 2011MySQL Performance Tuning (PDF, 693 kib), MySQL Replication for Beginners (PDF, 380 kib)FrOSCon 2011, August 20-21 2011, St. Augustin, GermanyGer
June 2011DB-Programming in a different way: HandlerSocket and similar Technologies - NoSQL for MySQL (PDF, 448 kib)DOAG SIG Development, June, 9th 2011, Kassel, GermanyGer
May 2011HA Architectures with MySQL (PDF, 228 kib)DOAG SIG Database MySQL, May, 19th 2011, Hanover, GermanyGer
April 2011HandlerSocket und ähnliche Architekturen, NoSQL für MySQL (PDF, 897 kib)Grazer Linuxtage 2011 April 9th 2011, Graz, AustriaGer
March 2011MySQL Replication - Scale-Out, Master-Master, Backup (PDF, 381 kib)DOAG Regionaltreffen München March 23rd 2011, Munich, GermanyGer
February 2011HandlerSocket and similar architectures - NoSQL for MySQL (PDF, 880 kib)FOSDEM 2011, Brussels, BelgiumEng
November 2010MySQL Architectures for Oracle DBA’s (PDF, 479 kib)DOAG Conference 2010, Nürnberg, GermanyGer
August 2010MySQL Performance Monitoring with Zabbix (PDF, 2.1 Mib)OpenSQL Camp EU 2010 / FrOSCon, St. Augustin, GermanyGer
March 2010MySQL, where are you going? (PDF, 171 kib)OpenExpo, Bern, SwitzerlandEng
March 2010Performance Tuning & Scale-Out mit MySQL (PDF, 339 kib)Internet Briefing, Zürich, SwitzerlandGer
September 2007MySQL High-Availability and Scale-Out architectures (PDF, 547 kib)/ch/open Workshop-Tage, Zürich, SwitzerlandEng
September 2007MySQL Performance Tuning (PDF, 834 kib)/ch/open Workshop-Tage, Zürich, SwitzerlandEng
August 2007Locality of (P)reference (PDF, 467 kib)MySQL PS EMEA Meeting, Budapest, HungaryEng

If you want us to have a talk at your conference or event please let us know.




FromDual

Taxonomy upgrade extras: 



Neutral and vendor independent services for
MariaDB, Galera Cluster, MySQL and PostgreSQL!







Job offerings

Taxonomy upgrade extras: 

Open job offers

We currently have no job opportunities open. If you are interested to work for FromDual leave us a note and we will inform you about our future job offerings…




MariaDB, MySQL and PostgreSQL Consulting

Taxonomy upgrade extras: 

FromDual delivers neutral and vendor independent on-site consulting services on MariaDB, MySQL, Galera Cluster, Percona Server and PostgreSQL. Our experienced consultants recommend you the best solutions fitting to your needs.







FromDual software for MariaDB, MySQL and PostgreSQL

Taxonomy upgrade extras: 

FromDual Performance Monitor

The FromDual Performance Monitor is a monitoring solution for MariaDB, Galera Cluster, MySQL, Percona Server and PostgreSQL databases.




Contact FromDual

Taxonomy upgrade extras: 

You can get in contact with us as follows:


Address:FromDual GmbH
Rebenweg 6
CH - 8610 Uster
Switzerland
E-mail:contact@fromdual.com
Phone:+41 44 500 58 20+49 201 853 67 70
 
VAT/UID:CHE-301.341.221 MWST
DUNS number:485921436



Pages

Subscribe to RSS - oli's blog