![更改 mysql datadir 目录失败](https://linux22.com/image/1001300/%E6%9B%B4%E6%94%B9%20mysql%20datadir%20%E7%9B%AE%E5%BD%95%E5%A4%B1%E8%B4%A5.png)
使用 ubuntu 17.04,mysql 5.7。
我将 复制/var/lib/mysql
到我的/newlocation
并具有权限。我手动检查了新位置中的所有用户和组以及文件和文件夹权限是否与 中的权限相同/var/lib/mysql
。我更改了 mysql 配置中的 datadir。我卸载了 apparmor,所以这不再是问题。 所在的分区/newlocation
与 不同/var/lib/mysql
,但它安装在fstab
和 中,ext4
所以一切都应该很好,但在尝试启动 mysql 服务器时,我收到来自 systemctl 的此错误
mysqld: Can't change dir to '/newlocation' (Errcode: 13 - Permission denied)
正如我所说, 的文件和权限以及用户和组与/newlocation
相同/var/lib/mysql
。我能想到的唯一事情是,它不喜欢 datadir 位于不同驱动器的不同分区上,或者用户 mysql 访问该位置存在问题(这很奇怪,因为用户 mysql 拥有/newlocation
)
答案1
因此,似乎有效的方法是从系统中完全删除 mysql,然后编辑 fstab 条目以将新分区挂载到 /var/lib/mysql,然后再次安装 mysql。不确定这是不是一个好主意,但似乎有效