Mysql was working, then I tried to move the MySql database directory as in this question which I already successfully used several times, but this time something went wrong and I got the error:

$ mysql  
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

so I re-installed mysql (several times as I kept getting that error), mainly with the following commands:

# ** uninstall:
sudo su
rm -r /var/lib/mysql # delete the database
aptitude remove mysql-server mysql-client mysql-common
apt-get autoremove
apt-get autoclean

# ** reinstall
apt-get install mysql-server mysql-client mysql-common
apt-get update

The disk is not full and I think think the problem is that at some point somehow I managed to get /etc/apparmor.d/usr.sbin.mysqld deleted and now I have the previous problem and also

$ service mysql status
mysql: unrecognized service

The disk is not full and if I reinstall mysql the file is not added. So, thanks to @AbrahamVanHelpsing I got the file from source, but the problem stills. Any ideas?



aa-status did not mention mysql but it does now that I put the file that was missing.

Another edit

I can access mysql by running sudo mysqld and then mysql from another terminal, I still hope to register mysql in apparmor though

  • What do you see when you run sudo aa-status? Is there any reference to mysql in the output? And, sudo apt-get apparmor-profiles may have something for mysql. – user25656 Jan 20 '13 at 5:35

You need to add the new MySQL location to apparmor alias.

To add it, simply type

sudo nano /etc/apparmor.d/tunables/alias

And add this to the end of the file

/your/new/data/dir -> /var/lib/mysql

Note: you may see the ubuntu buit-in manual in the file

And type

sudo invoke-rc.d apparmor reload

Then it should work

Or a simpler solution

Remove AppAmor

sudo apt-get purge apparmor
  • 2
    I don't really think anyone wants to remove apparmor! I'll try that once at home, thanks by now! – ecoologic Jan 20 '13 at 22:14
  • 1
    Please don't suggest apparmor be removed! – George Udosen Sep 4 '17 at 14:28

If you just want to use mysql then you can use docker container. It will remain isolated.

url:- https://hub.docker.com/r/mysql/mysql-server/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.