MySQL Datenverzeichnis verschieben. Leicht gesagt.
Auf meinem neuen Linux Webserver wollte ich – um mir das Datensicherungsgehähe zu vereinfachen – den Datenbankpfad für MySQL verschieben. Eigentlich ganz einfach, da nur der Eintrag datadir = /var/lib/mysql
in der Datei /etc/mysql/my.cnf
anzupassen ist. Blöderweise ließ sich nach dieser Anpassung der Dämon (mit Error 13 – Zugriff verweigert) nicht mehr starten. Schuld ist AppArmor, welches das neue Datenverzeichnis noch nicht kennt und den Zugriff dort hin blockiert.
Zum Glück ist die Lösung einfach und hier gut dokumentiert. Man muss die AppArmor Konfiguration in der Datei /etc/apparmor.d/usr.sbin.mysqld
um den neuen Datenpfad ergänzen. Dazu werden die folgenden Zeilen angefügt:
/srv/mysql/ r,
/srv/mysql/** rwk,
Nach einem Neustart von AppArmor mit sudo service apparmor restart
lässt sich dann auch myssql wieder starten: sudo service mysql restart
Nochmals Danke an Matthias!
Antwort