MySQL Database Performance: Avoid this common mistake

One frequent topic of support request emails I receive is MySQL database performance. Clients complain about MySQL using too much server memory, too many MySQL slow queries, the famous Mysql server has gone away error and many other MySQL performance-related issues. As such, I wanted to share the solution to a common MySQL configuration mistake. […]

Could not increase number of max_open_files to more than… (Solution)

A quick solution to the warning “Could not increase number of max_open_files to more than” when starting MySQL or MariaDB. For some background, read How MySQL Opens and Closes Tables. Here’s an excerpt: “The table_open_cache and max_connections system variables affect the maximum number of files the server keeps open. If you increase one or both of […]

“MySQL server has gone away” error – Solution(s)

The MySQL server has gone away error, means that MySQL server (mysqld) timed out and closed the connection. By default, MySQL will close connections after eight hours (28800 seconds) if nothing happens. However, in some cases, your web host, DBA, or app developer may have decreased this timeout setting, discussed below. MySQL server has gone […]

Memcache PHP Extensions for Memcached Caching Daemon

Memcached (Memcache Daemon) is a caching daemon designed especially for dynamic web applications to decrease database load by storing objects in memory. It is commonly used to speed up dynamic database-driven websites by caching data and objects in server memory to reduce the number of times the data source must be read. Memcached is free […]

Tuning MySQL my.cnf? Avoid this common pitfall!

It took me some time to decide the title for this article. MariaDB has been fast replacing MySQL as a growing number of Linux distributions now default to MariaDB over MySQL. MariaDB is an enhanced, drop-in replacement for MySQL. Therein lies my predominantly self-made conundrum, MySQL or MariaDB? That said, the MySQL tuning advice below […]

100 Top Observability Tools (+Server Monitoring and APM solutions)

Looking for application monitoring and observability solutions? On this page, I’ve listed the top application performance monitoring (APM), infrastructure monitoring, and observability solutions to date. The listings are updated periodically as APM and observability solutions continue a rapid evolution. While I haven’t tested all of these solutions, I’ve used more than a third of them. […]

MySQL Performance Tuning: Tips, Scripts and Tools

With MySQL, common configuration mistakes can cause serious performance problems. In fact, if you misconfigure just one of the many config parameters, it can cripple performance. Of course, the performance of MySQL is often tied to the efficiency of your MySQL queries. It’s important to ensure that your performance issues are not due to poorly […]

MySQL Performance: Stop hoarding. Drop unused MySQL databases

Recently, I supported a new client with solving MySQL performance issues. There were several areas where MySQL performance issues were addressed. One issue, however, was overlooked prior to our communications, was that of keeping around unused databases. There was around 15 gigabytes of unused MySQL data – a mix of MyISAM and Innodb tables – […]

MySQL Query Cache for Performance, Avoid This When Tuning

Update: MySQL query cache is deprecated as of MySQL 5.7.20, and is removed in MySQL 8.0. – mysql.com One of the most misconfigured MySQL performance features is MySQL query_cache_size. This post references a web server with 32 gigabytes of RAM where the existing config had MySQL’s query cache size set incorrectly to 4 gigabytes. The thought behind it seemed […]