MySQL 使用 datadir 参数手动启动,但不能作为服务运行

MySQL 使用 datadir 参数手动启动,但不能作为服务运行

为何sudo service mysql start无法启动?但手册上说sudo mysqld --datadir=/newlocation可以启动?

我已将数据移动到格式化为 ext4 的新外部硬盘。

我用新位置更新了 my.cnf,更改了文件夹的所有权,删除了 apparmor,因为我认为它导致了无法启动 mysql。我还尝试使用 user=root 修改 my.cnf,但没有成功。

尝试启动服务时出现错误与“无法创建测试数据库”“错误 13 权限被拒绝”有关。在错误日志中,被拒绝的权限位于与手动启动相同的 /newlocation 上。

我想自动运行该服务。手动启动可以

有任何想法吗?

惠普

答案1

您已更改权限,但我们不知道您设置了什么权限。

在 Linux 中,每个服务都必须有自己的用户名,由于您做法不同,我认为您以不同的方式思考。

允许 mysqld 服务的用户访问您安装 mysql 的外部硬盘位置。

喜欢

chown -R mysql:mysql /位置/路径

我离开了我的 PC,请尝试此操作,如果问题仍然存在,请告诉我,并顺便提一下您安装 mysql 的方式。

相关内容