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

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

在安装zabbix的时候,导入初始架构和数据,sql出现了问题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加入如下指令apache

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

以后再使用ubuntu

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

会显示用户和database已存在vim

Table 'users' already exists

因此删除数据库中的database和用户架构

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

从新连接数据库和zabbix (我的还未理解为何zabbix须要数据库,希望有人能解答个人疑惑)ide

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了ui

# systemctl restart zabbix-server zabbix-agent apache2

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