正在使用错误的权限创建mysql.sock。什么定义了套接字的权限?
在安装了mariadb服务器的全新安装RHEL7上,启动mariadb会在/var/lib/mysql中创建一个套接字文件: srwxrwxrwx。1 mysql 0 May 25 08:23 mysql.sock 我们的本地安装过程移动这个目录,并在/var/lib/mysql处设置一个符号链接。多年来,这种方法一直运行良好,但在RHEL7中,通过当前的维护,启动mariadb现在可以创建mysql.sock文件,而无需为group或其他人编写,从而无法正常连接到数据库。在受影响的系统上,插座现在看起来像: srwxr-xr-x+1 mysql 0 May 25 08:30 mysql.sock正在使用错误的权限创建mysql.sock。什么定义了套接字的权限?,mysql,sockets,Mysql,Sockets,在安装了mariadb服务器的全新安装RHEL7上,启动mariadb会在/var/lib/mysql中创建一个套接字文件: srwxrwxrwx。1 mysql 0 May 25 08:23 mysql.sock 我们的本地安装过程移动这个目录,并在/var/lib/mysql处设置一个符号链接。多年来,这种方法一直运行良好,但在RHEL7中,通过当前的维护,启动mariadb现在可以创建mysql.sock文件,而无需为group或其他人编写,从而无法正常连接到数据库。在受影响的系统上,插座
如何以及在何处设置套接字的权限?如何更改设置?在重新启动mysql服务器时创建套接字文件时,将设置权限。所以我猜默认权限在创建套接字的代码中的某个地方
您的套接字文件似乎在ACL control+下,我对此知之甚少,但您是否尝试过chmod a+w mysql.sock?问题在于目录和文件上的ACL,尽管它们本应授予对该文件的访问权限,但显然,套接字的处理方式不同 删除所有ACL,在这种情况下,mariadb的数据目录中不应该有人修改任何内容,因此这样做没有任何影响,允许使用适当的权限正确创建文件,并且我们能够连接到数据库。因此,解决方案是不将ACL放在目录或文件上
啊,我们编织了一个多么纠结的网络啊…事实上,我可以用chmod a+w mysql.sock更改套接字的保护,然后一切都按预期开始工作。但是,如果我重新启动mariadb或引导系统,套接字文件将返回到其不太有用的保护。不过,你的回答确实让我找到了最终的解决办法。谢谢你。