innotop is a ‘top’ clone for MySQL with many features and flexibility.
Each of its modes shows you a different aspect of what’s happening in the server. For example, there’s a mode for monitoring replication, one for queries, and one for transactions. innotop refreshes its data periodically, so you see an updating view.
innotop has lots of features for power users, but you can start and run it with virtually no configuration.
innotop is mostly configured via its configuration file, but some of the configuration options can come from the command line.
innotop is free and open source software.
Key Features
- Completely customizable.
- Different modes:
- Health Dashboard – displays a single table with one row per monitored server. The columns show essential overview information about the server’s health, and coloration rules show whether replication is running or if there are any very long-running queries or excessive replication delay.
- InnoDB Buffers – displays information about the InnoDB buffer pool, page statistics, insert buffer, and adaptive hash index.
- Command Summary – similar to mytop’s Command Summary mode. It shows the “cmd_summary” table.
- InnoDB Deadlocks – shows the transactions involved in the last InnoDB deadlock. A second table shows the locks each transaction held and waited for. A deadlock is caused by a cycle in the waits-for graph, so there should be two locks held and one waited for unless the deadlock information is truncated.
- InnoDB Foreign Key Errors – shows the last InnoDB foreign key error information, such as the table where it happened, when and who and what query caused it, and so on.
- InnoDB I/O Info – shows InnoDB’s I/O statistics, including the I/O threads, pending I/O, file I/O miscellaneous, and log statistics. It displays the “io_threads”, “pending_io”, “file_io_misc”, and “log_statistics” tables by default.
- InnoDB Lock Waits – shows information from InnoDB plugin’s transaction and locking tables. You can use it to find when a transaction is waiting for another, and kill the blocking transaction. It displays the “innodb_blocked_blocker” table.
- Locks – shows information about current locks. At the moment only InnoDB locks are supported, and by default you’ll only see locks for which transactions are waiting.
- Master/Slave Replication Status – shows the output of SHOW SLAVE STATUS and SHOW MASTER STATUS in three tables.
- Open Tables – comes from MySQL’s SHOW OPEN TABLES command.
- User Statistics – displays data that’s available in Percona’s enhanced version of MySQL (also known as Percona Server with XtraDB).
- Query List – displays the output from SHOW FULL PROCESSLIST , much like mytop’s query list mode. This mode does not show InnoDB-related information.
- InnoDB Row Operations and Semaphores – shows InnoDB row operations, row operation miscellaneous, semaphores, and information from the wait array.
- Variables & Status – calculates statistics, such as queries per second, and prints them out in several different styles. You can show absolute values, or incremental values between ticks.
- InnoDB Transactions – shows transactions from the InnoDB monitor’s output, in top-like format.
- Limited support for managing servers.
- View any status variables how changing in real time.
- Plugin interface.
- Support for MySQL 8.0, MariaDB 10.0 has been added.
- Monitors many servers simultaneously and can aggregate across them. Server groups functionality. From the defined connections, you can easily configure groups and for almost each view mode – you can either choose a single connection or a group.
Website: github.com/innotop/innotop
Support:
Developer: Kenny Gryp, Frédéric Descamps (original developer Baron Schwartz)
License: GNU General Public License v2.0

innotop is written in Perl. Learn Perl with our recommended free books and free tutorials.
Related Software
| MySQL Tools | |
|---|---|
| DBeaver | Universal database tool |
| phpMyAdmin | MySQL web administration tool |
| NocoDB | Build databases as spreadsheets |
| MySQL Workbench | Complete visual database design tool |
| mycli | Command line interface for MySQL, MariaDB, and Percona |
| gh-ost | GitHub's Online Schema Migrations for MySQL |
| Beekeeper Studio | Cross-platform SQL editor and database manager |
| usql | Command-line database client |
| sqlit | lazygit of SQL databases |
| Harlequin | Easy, fast, and beautiful database client for the terminal |
| DbGate | Database manager for MySQL, PostgreSQL, MongoDB |
| Percona Toolkit | Essential command-line utilities for MySQL |
| SQuirreL SQL Client | Graphical SQL client written in Java |
| Adminer | Full-featured tool for managing content in MySQL database |
| dblab | Interactive client for PostgreSQL, MySQL, SQLite3, and more |
| Antares | SQL client based on Electron.js and Vue.js |
| XtraBackup | Backup utility for MySQL |
| innotop | Real-time, advanced investigation tool |
| SQLCheck | Detects common SQL anti-patterns |
| Skeema | Manage MySQL and MariaDB schema changes |
| Sequeler | Native Linux SQL client built in Vala and Gtk |
| orchestrator | High availability and replication management tool |
| OmniDB | Collaborative environment For database management |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

