The answers to related questions forget to:
- remove the MySQL databases
- remove the
mysql
user - remove the logs in
/var/log
How do I uninstall MySQL completely?
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It only takes a minute to sign up.
Sign up to join this communityBuilding off of another answer, open a terminal (press Ctrl+Alt+T) and run the following:
sudo -i
service mysql stop
killall -KILL mysql mysqld_safe mysqld
apt-get --yes purge mysql-server mysql-client
apt-get --yes autoremove --purge
apt-get autoclean
deluser --remove-home mysql
delgroup mysql
rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld
updatedb
exit
If you want to delete the log of what you did while using the mysql
client:
rm ~/.mysql_history
If you want to delete the logs of what all users on the system did while using the mysql
client (the other users might be unhappy with this):
awk -F : '{ print($6 "/.mysql_history"); }' /etc/passwd | xargs -r -d '\n' -- sudo rm -f --
or for all logs including those outside of existing user home directories:
sudo find / -name .mysql_history -delete
dpkg -l | grep mysql
to list any installed mysql packages, then e.g. sudo apt-get purge mysql-common
for each entry
mkdir /etc/apparmor.d/abstractions/mysql
and mkdir /etc/mysql/conf.d/
again.
ls -la /var/lib/mysql
)
I found some help, but it did not remove everything. I added an asterisk before and after mysql like this:
sudo apt-get remove --purge *mysql\*
sudo apt-get autoremove
sudo apt-get autoclean
sudo rm -rf /var/lib/mysql
If I didn't do that, I ran into trouble when re-provisioning the server (using geerlingguy's ansible-role-mysql).
Oct 20, 2017 at 6:19
I used a collab of 2 answers, first I ran this
sudo -i
service mysql stop
killall -KILL mysql mysqld_safe mysqld apt-get --yes purge mysql-server mysql-client
apt-get --yes autoremove --purge
apt-get autoclean
deluser --remove-home mysql
delgroup mysql
rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld
updatedb
exit
Then checked, but still had an error, so as backup, I ran this within the terminal.
Worked perfectly.
Another way, that worked for me, was to use Synamptic Package Manager. On the left hand pane,where it says: All, Installed, etc. there is an entry for Not Installed (residual config.) (or similar wording). Under there I found options to clear all MySQL install files. This worked for MySQL 5.7.
apt purge <package>
and it does not remove any of the three things the OP asked how to remove.
May 4, 2022 at 4:02