Zabbix 4.4 离线安装 使用mariadb的踩坑,无法停止服务

先分享一个网站,之前就没注意过有这个网站,不知道是啥时候开放的。里面分享了N多zabbix的模板。

https://share.zabbix.com/

   

   

报错如下

Unsupported charset or collation for tables 

   

原因是因为数据库字符集支持问题

   

解决办法是在创建数据库时,使用如下字符集。

具体命令为

create database zabbix character set utf8 collate utf8_bin;

   

初始配置下zabbix服务端仅使用8M的内存资源,在增加了被监控的主机之后,8M的内存不够用,所以zabbix服务端启动会报错内存不足,具体就不上图了。

   

因为是编译安装,仅知道启动服务端的命令是zabbix_server 但是停止服务端的命令不知道是啥,尝试使用zabbix_server stop 也失败了,最后就想到杀进程

   

如果所示

   

我编译安装的最新版的zabbix 4.4.7

这里面有好多进程。仅杀死主进程的话,子进程会接管主进程的工作。达不到停止服务的目的。

所以就想到了批量杀死所有进程

ps -efww|grep zabbix_server|grep -v grep|cut -c 9-15|xargs kill -9

   

上述命令后即可杀死所有zabbix_server的进程,其实我觉得这应该并不是zabbix官方推荐的停止服务方法。有大神知道关于停止服务的方法请在下方留言。

   

最后记录一下上述命令的用法介绍

ps -efww|grep processname|grep -v grep|cut -c 9-15|xargs kill -9

   

管道符"|"用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的几个命令:

   

   

"ps -efww"是查看所有进程的命令。这时检索出的进程将作为下一条命令"grep processname"的输入。

   

   

"grep processname"的输出结果是,所有含有关键字"processname"的进程。

   

   

"grep -v grep"是在列出的进程中去除含有关键字"grep"的进程。

   

   

"cut -c 9-15"是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。

   

   

"xargs kill -9"中的xargs命令是用来把前面命令的输出结果(PID)作为"kill -9"命令的参数,并执行该命令。"kill -9"会强行杀掉指定进程,这样就成功清除了同名进程。

   

   

   

   

   

posted @ 2020-05-23 18:23  Withfeel  阅读(936)  评论(0编辑  收藏  举报