π 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 |