Я предпочитаю использовать параметр mount with bind, поэтому я избегаю дальнейших изменений конфигурации Apparmor и Mysql.
Например:
Предположим, что я хочу переместить все в /var/www. Предположим, что этот каталог является моей средой dev, и он монтируется в другой раздел
. Сначала нам нужно остановить mysql:sudo systemctl stop mysql.service
Мы перемещаем файлы (сохраняем разрешение) sudo rsync -av /var/lib/mysql /var/www
. Это приведет к созданию каталога со всем содержимым. Мы удаляем все в старом каталоге: sudo rm -r /var/lib/mysql/*
Мы монтируем новый каталог с опцией bind в старой. отредактируйте /etc/fstab и добавьте эту строку: /var/www/mysql /var/lib/mysql none bind 0 0
Это установит /var/www/mysql в нашем пустом каталоге /var/lib/mysql. Параметр bind здесь делает магию, он заполняет /var/lib/mysql содержимым /var/www/mysql, поэтому для mysql и apparmor это будет похоже на то, что ничего не изменилось. Теперь мы монтируем: sudo mount -a
и перезапускаем mysql.