๐ Guide: Fixing netstat: command not found and MySQL Not Running in XAMPP (Linux)
๐ด Error 1: netstat: command not found
๐ Description
When you restart XAMPP, you see:
/opt/lampp/share/xampp/xampplib: line 22: netstat: command not found
๐ Cause
XAMPP scripts use netstat to check if services (Apache, MySQL, ProFTPD) are running. Modern Linux systems (like Ubuntu 20+, Debian 11+, etc.) do not install netstat by default. The netstat command is part of an older package called net-tools.
โ Solution
You need to install net-tools.
๐ Command to Install net-tools
For Debian/Ubuntu systems:
sudo apt-get update
sudo apt-get install net-tools
For Red Hat/CentOS systems:
sudo yum install net-tools
๐ After Installing
Restart XAMPP:
sudo /opt/lampp/lampp restart
๐ด Error 2: XAMPP: Stopping MySQL...not running.
๐ Description
You also see:
XAMPP: Stopping MySQL...not running.
๐ Cause
This usually happens when:
- MySQL was never started successfully.
- There is a configuration issue.
- There is a problem with MySQL data files.
- MySQL port (3306) is already in use.
โ Solution 1: Check MySQL Logs
XAMPP logs MySQL errors in:
/opt/lampp/var/mysql/<hostname>.err
Example Command
cat /opt/lampp/var/mysql/$(hostname).err
Common Errors
- Port 3306 in use.
- InnoDB corruption.
- Missing configuration files.
โ Solution 2: Check Running MySQL Process
Sometimes MySQL from system installation (outside XAMPP) might be running.
Check using:
sudo systemctl status mysql
If the system MySQL is running, it can block XAMPP MySQL from starting.
To Stop System MySQL
sudo systemctl stop mysql
โ Solution 3: Start XAMPP MySQL Manually
You can try starting MySQL directly:
sudo /opt/lampp/lampp startmysql
If it still fails, check logs again.
โ Solution 4: Check XAMPP MySQL Port
Ensure MySQL is set to use port 3306 (or change if needed) in:
/opt/lampp/etc/my.cnf
โ Solution 5: Fix Permissions (if needed)
Sometimes XAMPP MySQL fails due to permission issues. You can set proper permissions:
sudo chown -R mysql:mysql /opt/lampp/var/mysql/
sudo chmod -R 755 /opt/lampp/var/mysql/
๐ ๏ธ Example Full Workflow
1๏ธโฃ Install net-tools
sudo apt-get update
sudo apt-get install net-tools
2๏ธโฃ Stop System MySQL (if running)
sudo systemctl stop mysql
3๏ธโฃ Restart XAMPP
sudo /opt/lampp/lampp restart
4๏ธโฃ Check MySQL Logs (if MySQL still fails)
cat /opt/lampp/var/mysql/$(hostname).err
๐ Final Tip
If MySQL data directory is corrupted or youโre setting up a fresh instance, you can reset MySQL data directory (be careful, this will erase all databases).
sudo mv /opt/lampp/var/mysql /opt/lampp/var/mysql_backup
sudo mkdir /opt/lampp/var/mysql
sudo /opt/lampp/lampp startmysql
This forces MySQL to recreate the system tables. Only do this if you are sure your data is backed up.
๐ Full Error + Solution Summary Table
| Error Message | Cause | Solution |
|---|---|---|
netstat: command not found | Missing net-tools | Install with sudo apt-get install net-tools |
Stopping MySQL...not running. | MySQL failed to start | Check logs, check port conflicts, check permissions, restart XAMPP |

Iโm Abhishek, a DevOps, SRE, DevSecOps, and Cloud expert with a passion for sharing knowledge and real-world experiences. Iโve had the opportunity to work with Cotocus and continue to contribute to multiple platforms where I share insights across different domains:
-
DevOps School โ Tech blogs and tutorials
-
Holiday Landmark โ Travel stories and guides
-
Stocks Mantra โ Stock market strategies and tips
-
My Medic Plus โ Health and fitness guidance
-
TrueReviewNow โ Honest product reviews
-
Wizbrand โ SEO and digital tools for businesses
Iโm also exploring the fascinating world of Quantum Computing.
Best Cardiac Hospitals Near You
Discover top heart hospitals, cardiology centers & cardiac care services by city.
Advanced Heart Care โข Trusted Hospitals โข Expert Teams
View Best Hospitals