web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

ZABBIX服务安装,如在RedHat、CentOS、Ubuntu等上安装

版主: 承诺无痕迹-dean

回复
Tiger233
初学乍练
初学乍练
帖子: 3
注册时间: 2018年 6月 5日 16:49 星期二

web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

帖子 Tiger233 » 2018年 6月 5日 17:06 星期二

http://www.zsythink.net/archives/catego ... 学习朱大神博客的教学
mysql默认的套接字在/etc/my.cnf 默认套接字地址是/tmp/mysql.sock 修改路径为/var/lib/mysql/mysql.sock mysql服务起不来
将mysql套接字改回原来的路径,新建了一个软连接ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 这时候zabbix日志显示连接到数据库正常,但是web界面还是出错
修改php里面的配置文件php.ini里面default_sock设置为/var/lib/mysql/mysql.sock还是不行.实在不行了,求助一下论坛里面的大神帮忙看下
[http://p2blvad0z.bkt.clouddn.com/zabbixerror.png][/出错示例图]

Tiger233
初学乍练
初学乍练
帖子: 3
注册时间: 2018年 6月 5日 16:49 星期二

Re: web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

帖子 Tiger233 » 2018年 6月 5日 17:12 星期二

系统使用的是 centos7
mysql版本 mysql Ver 14.14 Distrib 5.5.56, for Linux (x86_64) using readline 5.1
zabbix版本 3.0.18

lindyhegang
初学乍练
初学乍练
帖子: 1
注册时间: 2018年 6月 8日 15:20 星期五

Re: web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

帖子 lindyhegang » 2018年 6月 8日 15:22 星期五

如果sock文件都没有问题的话,在Database host那项里把“localhost”换成“127.0.0.1”,这样应该可以通过安装。

Tiger233
初学乍练
初学乍练
帖子: 3
注册时间: 2018年 6月 5日 16:49 星期二

Re: web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

帖子 Tiger233 » 2018年 6月 11日 08:44 星期一

lindyhegang 写了:如果sock文件都没有问题的话,在Database host那项里把“localhost”换成“127.0.0.1”,这样应该可以通过安装。
你好,我按照您的方法把databse从localhost改成127.0.0.1就好了.请问这是为什么呢?我改成我zabbix_server.conf文件中的ip地址都不行.谢谢您能指导我.

dragondoublestar
初学乍练
初学乍练
帖子: 1
注册时间: 2018年 9月 8日 09:30 星期六

Re: web界面第三部连接总是显示无法连接数据库套接字/var/lib/mysql/mysql.sock

帖子 dragondoublestar » 2018年 9月 8日 09:43 星期六

我也遇到了同样的问题,但是Database host改成127.0.0.1也不行继续报一下错误
Error connecting to database: Can't connect to MySQL server on '127.0.0.1' (13),望大神指导下
以下是所有相关配置文件
[root@localhost tmp]# egrep -i sock /etc/my.cnf
socket = /tmp/mysql.sock
socket = /tmp/mysql.sock

[root@localhost tmp]# egrep -i sock /etc/zabbix/zabbix_server.conf
### Option: SocketDir
# IPC socket directory.
# Directory to store IPC sockets used by internal Zabbix services.
# SocketDir=/tmp
SocketDir=/tmp
# If set to localhost, socket is used for MySQL.
# If set to empty string, socket is used for PostgreSQL.
### Option: DBSocket
# Path to MySQL socket.
DBSocket=/tmp/mysql.sock
# Database port when not using local socket. Ignored for SQLite.

[root@localhost tmp]# cat /etc/php.ini|grep sock
; Default timeout for socket based streams (seconds)
; http://php.net/default-socket-timeout
default_socket_timeout = 60
; Default socket name for local MySQL connects. If empty, uses the built-in
; http://php.net/pdo_mysql.default-socket
pdo_mysql.default_socket=
; Default socket name for local MySQL connects. If empty, uses the built-in
; http://php.net/mysql.default-socket
mysql.default_socket =/tmp/mysql.sock
; Default socket name for local MySQL connects. If empty, uses the built-in
; http://php.net/mysqli.default-socket
mysqli.default_socket =

回复