Q. How do I find out which table is consuming resources under MySQL Database server from UNIX shell prompt?
A. You can use mytop command a console-based (non-gui) tool for monitoring the threads and overall performance of a MySQL.
Install mytop
First install required perl modules:
cpan -i Term::ReadKey
cpan -i Term::ANSIColor
cpan -i Time::HiRes
Next, install mytop, enter:
wget http://jeremy.zawodny.com/mysql/mytop/mytop-1.6.tar.gz
tar -zxvf mytop-1.6.tar.gz
cd mytop-1.6
perl Makefile.PL
make
make test
make install
To view information about database called foo, enter:
$ mytop -u dba -p 'password' -h 10.2.4.5 -d foo
Where,
- -u : Database username.
- -p : Database password.
- -h : Database server IP address.
- -d : Database name.
Read mytop man page for further information:
perldoc mytop
🐧 3 comments so far... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Very good way to install mytop.
However there is one small step missing. After tar one needs to go into mytop directory to run perl Makefile.PL. So the steps would be as follows:
wget http://jeremy.zawodny.com/mysql/mytop/mytop-1.6.tar.gz
tar -zxvf mytop-1.6.tar.gz
cd mytop-1.6
perl Makefile.PL
make
make test
make install
Thank you.
Sachin.
Thanks for the heads up. The faq has been updated.
hi vivek,
my suggestion is that when you describe such tips like installing a package etc, i guess you should tell how to do this in other os also. for eg, in freebsd mytop can be installed in from /usr/ports/databases/mytop.
A drawback which I have seen which this tool is that it will create a database called ‘test’ and many control panels like cPanel will not allow this db.
So, a much reliable tool is the command ” mysqladmin -v processlist ” which provides a comprehensive data about the queries and using the mysql command ” explain $query ” to dee what exactly the particular query is doing and why it is resourse consuming.
Vinod :)