我有一个包含三个节点的 Galera 集群安装。根据要求,我的 MariaDB 安装必须位于与默认路径不同的路径中,并且用户不能是 mysql 。因此,我移动了所有 mysql 数据路径,并创建了一个新用户和组来管理 mysql 服务。
MariaDB 服务工作正常,但我注意到已经为第三个程序安装创建了一个 mysql-slow.log
,并具有 mysql:root
权限监控查询。打开 mysql.err
我发现以下错误:
[ERROR] Could not use mysql-slow.log for logging (error 13).Turning logging off for the whole duration of the MySQL server process. To turn it on again: fix the cause, shutdown the MySQL server and restart it.
所以我已经chown myuser:mygroup mysql-slow.log
并重新启动服务,但仍然具有相同的权限。然后我在 my.cnf
中设置了 slow_query_log=1
,以便尝试 myuser 在开始时创建该文件,但删除后错误的权限仍然存在文件并重新启动。
我的 mariadb 数据路径中的所有文件都不是由 mysql:mysql
用户管理的,在我的安装中都是由 myuser:mygroup
管理的,所以当 >mysql-slow.log
已创建,权限 mysql:root
已分配,因此我无权使用 myuser:mygroup
在那里写入,如果我分配它们手动没有效果,因为在 mysql 重新启动后被 mysql:root
覆盖。
有人知道是否有任何方法可以在创建 mysql-slow.log 文件时默认设置用户和组所有者?
谢谢。
问候,
塞尔吉奥
最佳答案
修复权限:
chmod 666 mysql-slow.log
看看你的脚本在做什么;也许它也需要修复。
关于mysql - 使用 mysql-slow.log 权限时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50330561/