Zabbix登陆页面报错解决方案


Zabbix登陆页面报错解决的具体方案在下面!

Zabbix 正常运行了很久之后,突然有一天打开zabbix首页,发现首页报错

[ERROR: Database corrupted, missed default user 'guest']

忽略错误,按正常的帐户和密码登录,页面崩溃

Fatal error: Maximum execution time of 300 seconds exceeded in /var/www/admin_site/htdocs/zabbix/include/config.inc.php on line 342

Zabbix serer 进程数较平时没有变化(23个),不过因为zabbix server产生的连接数情况比平时减少很多,从200个左右time wait链接减到几个close wait链接

尝试重启zabbix,问题依旧

解决过程

经过调查,在出问题的时刻,曾经做过重启mysql的操作,怀疑可能是MySQL重启导致数据库损伤。

进一步检查,MySQL数据库中的各个数据库和表,发现所有innodb的数据库(不仅仅是Zabbix的数据库)都挂了,全都不能访问,报错:[ERROR] /usr/local/mysql/bin/mysqld: Incorrect information in file: './db/table.frm'。而MyISAM表都是好的,基本上锁定是Innodb参数调整带来的问题

回想当时的操作,因为系统升级,加了2G内存,所以曾经手动修改过my.cnf,将其中的innodb参数做过调整

#修改前:

  1. innodb_buffer_pool_size = 400M  
  2.  
  3. innodb_log_file_size = 40M  
  4.  

#修改后:

  1. innodb_buffer_pool_size = 1G  
  2.  
  3. innodb_log_file_size = 128M  
  4.  

上网查找资料后,找到原因,就是因为innodb_log_file_size做了变化,系统发现了原来的log文件,而不知所措,结果就失败了。

解决方法也很简单,只要删除 data目录下的 ib_logfile*(我这里是ib_logfile0 和ib_logfile1) 然后启动mysql让它自己重建就好了。

看完上面的文章,相信大家都找出Zabbix登陆页面报错的原因了,以后再遇到这样的错误就会闹了!

相关内容