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;
檢查MySQL的配置信息是否正確;
2.4 軟連接
創建一個mysql.sock文件的軟連接到mysql.sock默認路徑;
比如:ln -s /home/mysql/mysql.sock /var/lib/mysql/mysql.sock
我按照上述操作修改配置,重啟服務后界面依然顯示通過默認sock文件無法連接到MySQL,最后通過創建軟連接解決問題。
