Tuesday, October 16, 2007

MySQL Administration Tools

Which tools to use as a MySQL DBA to monitor and manage a MySQL environment with multiple MySQL servers? Coming from an Oracle world, an Oracle DBA is used to OEM Grid Control, Embarcadero, Quest Software, BMC, etc. So what tools make the most sense in a MySQL world?

I'm also a bit twidler from way back. In this day of technology, vi is still my favorite editor. The days of writing cool scripts as a DBA, is like the day of the Gunfighter, those days are over. Every script written adds more administration and maintenance to a complex environment. Although I grew up in the days of writing awk, sed, shell and perl scripts using software for monitoring and management is more scalable and cost-effective for managing multiple databases. In this complex environment, DBAs need to use software to help with the monitoring and maintenance of a large complex database environment.

The following tools are popular in MySQL environments:
  • Mytop - Is a tool for monitoring threads and MySQL performance similar to the Unix top program.
  • phpMyAdmin - A web-based MySQL DBA administration tool for managing MySQL, users, tables, running queries, etc.
  • innotop - An InnoDB and MySQL monitor tool.
  • Nagios - is a monitoring tool for hosts, services and networks.
  • MySQLMonitor - The MySQL Enterprise Network Monitoring and Advisory Services tool is a tool for monitoring a MySQL environment with multiple advisors that offers a lot of benefits.
Additional tools recommended by readers.
  • Cacti - A network graphing solution.
  • OpenNMS - An open source network management platform.

8 comments:

Anonymous said...

Two other useful tools are Cacti and OpenNMS. I prefer OpenNMS as it scales better.

Unknown said...

Thanks for the input on Cacti and OpenNMS. I welcome feedback and recommendations of other tools. I also welcome your input on what you like about the different tools.

lunatech said...

mysqldumpslow

Unknown said...

We have to remember part of being a DBA is understanding we have a tool box to perform our job. Our tools are the different utilities, scripts and 3rd party software available to us. Each tool has its own purpose and limits.

A nice thing about MySQL is that for the new DBA, the tools are relatively easy to use to perform basis operations like mysqldump. As your databases grow, logical backups play an important role but they are not the fastest solution. That is when as a DBA we begin looking at different tools that will meet our needs for solving a problem.

As our databases get bigger we need to start looking at hardware solutions (LVM snapshots), 3rd party solutions (InnoDB hot backup), MySQL replication and other tools to help us either move our data or create backups. So there are solutions out there in our DBA toolbox for addressing backups as our databases get bigger.

Thank you for reading the blog and providing your thoughts.

Anonymous said...

You might also want to check out a great freeware from Quest - Spotlight on MySQL. It pinpoints the source of MySQL performance bottlenecks in real time and historically: http://www.quest.com/spotlight-on-mysql/. The dynamic interface on this tool is really great!

Unknown said...

Thanks for mentioning the software link. Over the next few weeks I will download it and take a look at it.

K said...

Have a look at: Monyog

http://webyog.com/en/

Unknown said...

Thank you for the tools provided.

------------
Best Homes