解决部署zabbix时 Row size too large (; 8126)的问题

Posted 仇实

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决部署zabbix时 Row size too large (; 8126)的问题相关的知识,希望对你有一定的参考价值。

环境
unbuntu 20.04
mariaDB
zabbix
安装教程
https://www.zabbix.com/cn/dow...

在安装zabbix的时候,导入初始架构和数据,sql出现了问题

Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.

错误是sql行大小过小
为了解决这个问题,我找到了sql的设置文件

/etc/mysql/my.cnf

vim加入以下指令

[mysqld]
max_allowed_packet = 1G
innodb_log_file_size = 2G
innodb_log_buffer_size = 512M 

之后再使用

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

会显示用户和database已存在

Table \'users\' already exists

所以删除数据库中的database和用户

MariaDB [(none)]> DROP USER \'zabbix\'@\'localhost\';
MariaDB [(none)]> DROP DATABASE zabbix;

重新链接数据库和zabbix (个人还未理解为什么zabbix需要数据库,但愿有人能解答我的疑惑)

mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by \'password\';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix`

然后重启一下就ok了

# systemctl restart zabbix-server zabbix-agent apache2

参考地址
https://dba.stackexchange.com...

以上是关于解决部署zabbix时 Row size too large (; 8126)的问题的主要内容,如果未能解决你的问题,请参考以下文章

MySQL插入单行数据较大时报Row size too large错误 解决方案

MySQL插入单行数据较大时报Row size too large错误 解决方案

mysql 主从同步故障解决   Error 'Row size too large (> 8126).

Row size too large. The maximum row size for the used table type 解决

Row size too large. The maximum row size for the used table type 解决

快速解决Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126问题