Apache Address already in use: Unable to bind port 80, please choose another one.

1) Find out what are the open ports and established TCP connections:
$ netstat -vatn
2) Make sure port 80/443 is not used by any other service:
# netstat -tulpn| grep :80
3) If port 80 is bind to httpd, kill all process:
# killall -9 httpd

Reference: source.

XAMPP: Couldn't start MySQL!

The file permission in Linux still gets me every now and then; specifically, after I had to reinstall XAMPP to my freshly OS Linux Mint Isadora. After trying to figure out where MySQL server is and what port it is running from, and etc... I've evidently complicated the problem more than necessary.  This is what I've done to get my server running again. Let's cut to the chase.

# chmod -R 777 /opt/lampp

# chmod 755 /opt/lampp/etc/my.cnf
# chmod 755 /opt/lampp/etc/httpd.conf
# chmod 755 /opt/lampp/etc/php.ini
# chmod 755 /opt/lampp/etc/proftpd.conf
# chmod 755 /opt/lampp/phpmyadmin/config.inc.php
# /opt/lampp/lampp restart

This took care of my problem!