我跟着所有的安装向导当设置icinga2,我有以下错误:
SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13)
我尝试使用mysql命令行实用程序,并得到相同的响应。 为了解决这个问题,我把这个套接字连接起来,使得ls -alF显示如下:
lrwxrwxrwx 1 mysql mysql 25 Jun 2 10:23 /var/run/mysqld/mysqld.sock -> /var/lib/mysql/mysql.sock=
和ls -alF /var/lib/mysql/mysql.sock返回
srwxrwxrwx 1 mysql mysql 0 Jun 2 10:39 /var/lib/mysql/mysql.sock=
现在mysql的命令行没有任何抱怨,但我继续从icinga2网页界面收到“无法连接”的错误。 我找不到任何地方显示任何错误的日志。 我检查了以下日志文件:
ido2db.debug (does some stuff and then cleans up child processes) apache2/error.log (nothing) apache2/access.log (shows requests coming through from web interface) icinga2.err (nothing) icinga2/startup.log (looks pretty standard)
没有任何特定于icinga2 web界面的日志(没有/ var / log / icingaweb2,并且/ var / log / icinga2中没有web日志)
我不想更改mycnf文件,因为我有许多其他服务依赖于mysql套接字的当前位置。
我如何解决这个问题? 我似乎无法find一个configuration,我可以修改icinga2指向不同的套接字。 我可以设置MySQL有2个套接字?
如果我更改my.cnf文件以将套接字设置在正确的位置,则一切正常。
目录/var/lib/mysql通常只能读取我的用户mysql和当然root。
因此,任何其他用户,如Nagios,icinga或Apache的系统用户将无法访问该套接字。