我安装了 mysql8.0,一切正常。但我想将数据目录更改为新位置。请点击此链接 https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-20-04
然后按照步骤4,我无法重启Mysql
现在是时候启动 MySQL 了。但是,如果你这样做,你会遇到另一个错误。这个错误不是 AppArmor 问题,而是由 mysql-systemd-start 引起的,这是一个支持通过 systemd 管理 MySQL 的脚本。你可以使用以下命令检查此脚本:
nano /usr/share/mysql/mysql-systemd-start
并且已经出来了
verify_ready $1
verify_database $1
/lib/apparmor/profile-load usr.sbin.mysqld
if [ ! -r /etc/mysql/my.cnf ]; then
echo "MySQL configuration not found at /etc/mysql/my.cnf. Please install one."
exit 1
fi
那么,如何解决这个问题?我不想重新安装 mysql,因为我想将数据目录更改为新位置。谢谢大家
答案1
leoce 的回答
01 修改 /etc/apparmor.d/usr.sbin.mysqld,将 /var/lib/mysql 更改为自定义路径,然后重新加载 apparmor 02 为 mysql 禁用 apparmor
sudo ln -s /etc/apparmor.d/usr.sbin.mysqld /etc/apparmor.d/disable/
apparmor_parser -R /etc/apparmor.d/disable/usr.sbin.mysqld 03 完全禁用 apparmor
sudo systemctl disable apparmor