How do I find out if my MySQL server is running or not under Linux / UNIX operating systems?
You can use mysql startup script or mysqladmin command to find out if it is running on Linux. Then you can use ps command and telnet command too (it is not reliable but it works.). mysqladmin is a utility for performing administrative operations. You can also use shell script to monitor MySQL server. You can use mysqladmin as follows:
# mysqladmin -u root -p status
Output:
Enter password: Uptime: 4 Threads: 1 Questions: 62 Slow queries: 0 Opens: 51 Flush tables: 1 Open tables: 45 Queries per second avg: 15.500
If MySQL serer is running it will display output as above. It displays uptime and number of queries etc. If server is not running then it will dump error as follows
# mysqladmin -u root -p status
Output:
mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Under Debian Linux you can type following command to find out if MySQL server is running or not
# /etc/init.d/mysql statusOutput:
/usr/bin/mysqladmin Ver 8.41 Distrib 4.1.15, for pc-linux-gnu on i486 Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL license Server version 4.1.15-Debian_1-log Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 4 min 16 sec Threads: 1 Questions: 66 Slow queries: 0 Opens: 51 Flush tables: 1 Open tables: 45 Queries per second avg: 0.258
If you are using RedHat of Fedora then you can use following script"
# service mysqld statusOR# /etc/init.d/mysqld statusSee also:
You should follow me on twitter here or grab rss feed to keep track of new changes.
Featured Articles:
- 30 Handy Bash Shell Aliases For Linux / Unix / Mac OS X
- Top 30 Nmap Command Examples For Sys/Network Admins
- 25 PHP Security Best Practices For Sys Admins
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- Linux: 20 Iptables Examples For New SysAdmins
- Top 20 OpenSSH Server Best Security Practices
- Top 20 Nginx WebServer Best Security Practices
- 20 Examples: Make Sure Unix / Linux Configuration Files Are Free From Syntax Errors
- 15 Greatest Open Source Terminal Applications Of 2012

- My 10 UNIX Command Line Mistakes
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- The Novice Guide To Buying A Linux Laptop













{ 2 comments… read them below or add one }
Also we can use
mysqladmin -umysql ping
It says “mysqld is alive” if mysql is running o/w
prints some messages.
If it doesn’t work then try:
mysqladmin -uDB_USERNAME -pDB_USERPASSWORD ping
Where you have to replace DB_USERNAME and DB_USERPASSWORD with actual values.
Thanks & Regards,
Yashpal
mysqladmin ping > /dev/null 2>&1 && echo RUNNING || echo DOWN
mysqladmin ping > /dev/null 2>&1 && up=1 || up=0
etc.
Why preffered?
man mysqladmin
ping
Check whether the server is available. The return status from mysqladmin
is 0 if the server is running, 1 if it is not. *****This is 0 even in case of
an error such as Access denied, because this means that the server is
running but refused the connection, which is different from the server
not running.*****