Zabbix:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

1. 问题原因

  MySQL配置的socket文件路径发生变化,通过默认位置的mysql.scok文件无法连接MySQL,或者默认位置不存在mysql.sock文件。

2. 解决方案

2.1 my.cnf 配置

  vim /etc/my.cnf

  检查 [mysqld] [mysql] [client] 三个部分是否都配置了socket的文件路径,如果没有,则在对应模块添加socket配置,然后重启MySQL服务;

2.2 zabbix_server.conf 配置

  vim /etc/zabbix/zabbix_server.conf

DBSocket=/home/mysql/mysql.sock

  如果DBSocket配置项被注释了,则放开注释,再把mysql.sock的文件位置配置到该选项;

  然后重启 zabbix-server服务;

  tailf /var/log/zabbix/zabbix_server.log 观察日志看能否正常启动;

2.3 zabbix.conf.php 配置

  vim /etc/zabbix/web/zabbix.conf.php

<?php
// Zabbix GUI configuration file.
global $DB;

$DB['TYPE']     = 'MYSQL';
$DB['SERVER']   = 'localhost';
$DB['PORT']     = '3306';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = '12345678';

// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';

$ZBX_SERVER      = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = 'bus-zabbix';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
View Code

  检查MySQL的配置信息是否正确;

2.4 软连接

  创建一个mysql.sock文件的软连接到mysql.sock默认路径;

  比如:ln -s /home/mysql/mysql.sock /var/lib/mysql/mysql.sock

  我按照上述操作修改配置,重启服务后界面依然显示通过默认sock文件无法连接到MySQL,最后通过创建软连接解决问题。

  

  

  

  

原文地址:https://www.cnblogs.com/virgosnail/p/12659519.html