在安装Zabbix时,经常会遇到各种坑,以及常见错误,今天汇总下常见错误以及如何进行解决
先说明下软件环境:
Centos7(系统)
错误类型:
错误一:PHP 编译错误;
错误二:PHP 安装后缺少文件;
错误三:PHP 无法启动,9000 端口被占用;
错误四:Zabbix 安装界面显示404 错误;
错误五:Zabbix 安装界面PHP 参数错误(1);
错误六:Zabbix 安装界面PHP 参数错误(2);
错误七:Zabbix 监控界面显示:
Zabbix server is not running:the information displayed may not be current.
错误八:Zabbix 监控界面显示报错:
A non well formed numeric value encountered ……
错误九:Zabbix 监控界面中文乱码;
错误十:Zabbix 监控界面显示报错:Error in query [UPDATE user_history SET title1=title2 …;
错误十一: 启动zabbix_server 报错libraries: libmysqlclient.so.20 ……
问题解决方案总结:
错误一:
php 编译时报错;
[root@bogon php-7.1.3]# make
make: *** No targets specified and no makefile found. Stop.
解决方案:
1、wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.6.tar.gz
2、tar zxvf ncurses-5.6.tar.gz
3、./configure -prefix=/usr/local -with-shared-without-debug
4、make
5、make install
错误二:
问题现象:安装PHP 时,编译安装后,发现/usr/local/php 目录下只有man 目录,缺少大部分目录和文件;
问题原因:系统已经自动安装了其他版本的PHP ;
解决方案:
卸载现有的php 后在进行安装
rpm –qa|grep php
rpm –e xxxxx
错误三:
问题现象:PHP 无法启动;
问题原因:9000 端口被占用;
解决方案:
停止占用9000 端口的应用;
[root@bogon log]# /usr/local/php/sbin/php-fpm
[28-Aug-2018 15:58:52] ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98)
[28-Aug-2018 15:58:52] ERROR: FPM initialization failed
ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98)
ERROR: FPM initialization failed
[root@bogon etc]# killall php-fpm
php-fpm: no process killed
[root@bogon etc]# lsof -i :9000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 2398 root 3u IPv4 15483 0t0 TCP *:cslistener (LISTEN)
httpd 2399 nobody 3u IPv4 15483 0t0 TCP *:cslistener (LISTEN)
httpd 2400 nobody 3u IPv4 15483 0t0 TCP *:cslistener (LISTEN)
httpd 2404 nobody 3u IPv4 15483 0t0 TCP *:cslistener (LISTEN)
[root@bogon etc]# kill -9 2399
[root@bogon etc]# kill -9 2400
[root@bogon etc]# kill -9 2404
[root@bogon etc]# lsof -i :9000
[root@bogon web_root]# cat /etc/services |grep "9000"
cslistener 9000/tcp # CSlistener
cslistener 9000/udp # CSlistener
igrid 19000/tcp # iGrid Server
igrid 19000/udp # iGrid Server
错误四:
问题现象:Zabbix 安装界面报错404 错误
问题原因:地址错误们应该指定setup.php
[root@bogon web_root]# ls /usr/local/nginx/web_root/setup.php
/usr/local/nginx/web_root/setup.php
解决方案:
应该指定setup.php
http://xxx.xxx.xxx.xxx/setup.php
错误五:
问题现象:Zabbix 安装界面,php 参数错误
解决方案:
[root@chenjch php-fpm.d]# find / -name CFrontendSetup.php
[root@chenjch php-fpm.d]#
vi /usr/local/nginx/web_root/include/classes/setup/CFrontendSetup.php
增加一行” $current = -1;”
错误六:
问题现象:Zabbix 安装时,显示php 参数不正确;
问题原因:php.ini 配置文件中已经改过参数了,但是没有生效;
vi /usr/local/php/etc/php.ini
post_max_size= 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai
解决方案:
php.ini 不生效 ,启动php 应该手动指定php.ini 文件
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini
错误七:
问题现象:Zabbix 监控界面显示:
Zabbix server is not running:the information displayed may not be current.
解决方案:
1、将文件 /usr/local/zabbix/etc/zabbix_server.conf 中的 ListenIP=127.0.0.1 注释掉!
2、然后重启 zabbix_server 和 zabbix_agentd
/etc/init.d/zabbix_server restart
/etc/init.d/zabbix_agentd restart
错误八:
问题现象:Zabbix 监控界面显示报错
· A non well formed numeric value encountered [dashboard.php:140 → make_status_of_zbx() → CFrontendSetup->checkRequirements() → CFrontendSetup->checkPhpMemoryLimit() → str2mem() in /usr/local/nginx/web_root/include/func.inc.php:411]
· A non well formed numeric value encountered [dashboard.php:140 → make_status_of_zbx() → CFrontendSetup->checkRequirements() → CFrontendSetup->checkPhpPostMaxSize() → str2mem() in /usr/local/nginx/web_root/include/func.inc.php:411]
· A non well formed numeric value encountered [dashboard.php:140 → make_status_of_zbx() → CFrontendSetup->checkRequirements() → CFrontendSetup->checkPhpUploadMaxFilesize() → str2mem() in /usr/local/nginx/web_root/include/func.inc.php:411]
解决方案:
vim /usr/local/nginx/web_root/include/func.ini.php
#对412行的 $val 的数据类型进行转换 。新增一行
val = intval(val=intval(val);
错误九:
问题现象:监控界面中文乱码,中文显示为” 口” ;
解决方案:
1、将Windows 电脑中C:\Windows\Fonts\simkai.ttf —( 简体楷体)
2、利用scp或者FileZilla上传至服务器目录/usr/local/ngin/web_root_fonts
3、更改defines.inc.php 文件
[root@acd fonts]# find /usr/local/nginx -name defines.inc.php
[root@acd fonts]#
sed -i 's/DejaVuSans/simkai/g' /usr/local/nginx/web_root/include/defines.inc.php
错误十:
问题现象:Zabbix 监控界面显示报错
Error in query [UPDATE user_history SET title1=title2, url1=url2, title2=title3, url2=url3, title3=title4, url3=url4, title4=title5, url4=url5, title5=’ 仪表板’, url5=‘dashboard.php’ WHERE userid=1] [Incorrect string value: ‘\xE4\xBB\xAA\xE8\xA1\xA8…’ for column ‘title5’ at row 1]
查询日志,Zabbix后台日志也显示类似的报错:
[root@bogon zabbix-2.4.8]# tail -f /tmp/zabbix_server.log
错误原因:MySQL 数据库字符集不是 utf8
解决方案:
进入Mysql中,更改mysql 数据库字符集为utf8 或者在创建zabbix 数据库时指定uft8 字符集
create database zabbix default charset utf8;
mysql> use zabbix
Database changed
mysql> show variables like '%char%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)
错误十一:
问题现象:启动zabbix报错
[root@chenjch init.d]# /etc/init.d/zabbix_server start
Starting zabbix_server: /usr/local/zabbix-2.4.8/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
[FAILED]
解决方案:
1、vim /etc/ld.so.conf 加入
/usr/local/mysql/lib
2、重启zabbix
/etc/init.d/zabbix_server restart
Starting zabbix_server: [ OK ]