Como eu desinstalo completamente o MySQL?

50

As respostas às perguntas relacionadas esquecem de:

  • remova os bancos de dados MySQL
  • remover o mysqlusuário
  • remova os logs /var/log

Como eu desinstalo completamente o MySQL?

Olathe
fonte

Respostas:

113

Com base em outra resposta , abra um terminal (pressione Ctrl+ Alt+ T) e execute o seguinte:

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

Se você deseja excluir o log do que você fez ao usar o mysqlcliente:

rm ~/.mysql_history

Se você deseja excluir os logs do que todos os usuários do sistema fizeram ao usar o mysqlcliente (os outros usuários podem não estar satisfeitos com isso):

awk -F : '{ print($6 "/.mysql_history"); }' /etc/passwd | xargs -r -d '\n' -- sudo rm -f --

ou para todos os logs, incluindo aqueles fora dos diretórios pessoais do usuário existentes:

sudo find / -name .mysql_history -delete
Olathe
fonte
18
Você também pode precisar dpkg -l | grep mysqlpara listar todos os pacotes MySQL instalado, em seguida, por exemplo, sudo apt-get purge mysql-commonpara cada entrada
xxjjnn
7
Se você re-instalar o mysql depois, você pode ter que executar mkdir /etc/apparmor.d/abstractions/mysqle mkdir /etc/mysql/conf.d/novamente.
kiltek
18

Encontrei alguma ajuda, mas não removeu tudo. Eu adicionei um asterisco antes e depois do mysql assim:

sudo apt-get remove --purge *mysql\*
sudo apt-get autoremove
sudo apt-get autoclean
Foxsolo
fonte
2
Você está tentando responder à pergunta?
George Udosen
2
melhor resposta sempre :)
RicardoE
1
Eu também faria sudo rm -rf /var/lib/mysqlSe não fizesse isso, tive problemas ao provisionar novamente o servidor (usando o ansible-role-mysql de geerlingguy).
TryHarder 20/10
Ele também remove a extensão php mysqli
Jaber Al Nahian
CUIDADO: isso pode remover vários outros pacotes que qualquer link para MySQL, leia atentamente o que será removido.
Nadjib Mami
1

Outra maneira, que funcionou para mim, foi usar o Synamptic Package Manager. No painel esquerdo, onde diz: All, Instalado, etc . existe uma entrada para Não instalado (configuração residual) (ou texto semelhante). Lá, encontrei opções para limpar todos os arquivos de instalação do MySQL. Isso funcionou para o MySQL 5.7.

Anthony
fonte