MySQL crashed on me sometime late Sunday or early Monday. Somehow the server managed to serve up 5-6 pages per day in a catatonic state on Monday and Tuesday. So I spent my lunch break digging into the problem.
The good news is, I got the server running a lot better. I tweaked Apache and MySQL, and when the system is idle or nearly idle, memory usage sits below 384 MB, which is reasonable for a Linux box with a couple of services running on it. Under load, I’ve seen memory usage approach 800 MB, but it settles down pretty quickly and drops back to the 384 MB range soon after traffic dies down. The problem in the past was that under some conditions, it didn’t settle down, and race conditions caused it to run out of memory.
While I was at it, I did some database optimization. The memory tweaks got the server performing a lot better, and that got me hungry for more. I found a plugin called WP-DBManager that allows database repair and optimization without having to get down and dirty in MySQL. Better yet, it allows you to schedule that maintenance, to keep your performance where it needs to be.
This server is still underpowered, and I have plans to replace it, but those plans keep getting bumped by other priorities. In the meantime, at least it’s running as well as it ever did, if not better.
David Farquhar is a computer security professional, entrepreneur, and author. He started his career as a part-time computer technician in 1994, worked his way up to system administrator by 1997, and has specialized in vulnerability management since 2013. He invests in real estate on the side and his hobbies include O gauge trains, baseball cards, and retro computers and video games. A University of Missouri graduate, he holds CISSP and Security+ certifications. He lives in St. Louis with his family.
Ah, I see the lack of paragraph breaks WAS just a one-off occurrence!
And WordPress, or whatever powers these comments, ate final the ..grin.. I had posted when I asked about tires.