zabbix7和ob-ce4.2.3连接问题

【 使用环境 】
测试环境
【 OB or 其他组件 】
ob-ce4.2.3
zabbix-server-mysql:latest docker镜像
【 使用版本 】
【问题描述】
使用ob的mysql5.7兼容模式时报错如图


然后用mysql8.0兼容模式时报错如下:

Character set '45' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file

我建库时已经设置了字符集,请问是什么原因呢:

> create database zabbix character set utf8mb4 collate utf8mb4_bin;
1 个赞

这张截图看起来是zabbix要求MySQL版本至少是8.0.30

Character set '45' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file  

这个报错是哪里报出来的呢?截图看下

1 个赞

两个报错区别是上面截图设置ob_compatibility_control=MYSQL5.7

下面那个报错是设置了ob_compatibility_control=MYSQL8.0

两个报错都是docker run起容器的时候日志里面的,就是这个字符集报错一直重复

1 个赞

数据库的话是按照这个链接里面设置的
OceanBase与Zabbix完成产品兼容互认-数据库技术博客-OceanBase分布式数据库
执行了

> create user zabbix@'%' identified by 'zabbix';
> create database zabbix character set utf8mb4 collate utf8mb4_bin;
> grant all on zabbix.* to zabbix@'%';

但是没有执行下面这几行

> use zabbix
> source /var/www/html/6.0/database/mysql/schema.sql;
> source /var/www/html/6.0/database/mysql/images.sql;
> source /var/www/html/6.0/database/mysql/data.sql;
1 个赞

你这里zabbix的版本是7,文档里面是zabbix6 你换成6试下

1 个赞

刚才回复您那个报错就是用的6.0,然后发现log中间也出现了好几次mysql版本的报错,明明已经设置了ob_conpatibility_control=‘MYSQL8.0’。到log最后就重复字符集报错了

1 个赞

可能是适配问题,建议按照文章中的OB版本及Zabbix版本 oceanbase-all-in-one-4.2.1.0-100120231013145059.el7.x86_64.tar.gz进行测试

1 个赞

4.2.1也是报错不兼容mysql5.7 :sweat_smile:

1 个赞

文章中给的这个版本目前下载不下来,你下载的是这个版本吗

#git clone -b release/6.0 --single-branch --depth=1 git://git.zabbix.com/scm/zbx/zabbix.git 6.0
Cloning into ‘6.0’…
fatal: unable to connect to git.zabbix.com:
git.zabbix.com[0: 87.110.183.174]: errno=Connection timed out

1 个赞

6.0和7.0都能下载。但我用的是zabbix-server的docker镜像。

1 个赞

使用这个编译安装zabbix server 试下

mkdir -p /var/www/html && cd /var/www/html
git clone -b release/6.0 --single-branch --depth=1 https://git.zabbix.com/scm/zbx/zabbix.git 6.0
cd /var/www/html/6.0
./bootstrap.sh
./configure  --prefix=$(pwd) --enable-server    --enable-agent  --with-mysql=/usr/bin/mysql_config  --enable-java  --enable-ipv6    --with-libcurl  --with-libxml2 --with-openipmi --with-net-snmp    --with-ssh2 --with-unixodbc --with-openssl --with-ldap
make && make install
make dbschema
1 个赞

关于版本号报错的问题,使用如下方式修改试下
obclient -hxx.xx.xx.xx -P2883 -uroot@proxysys -p’xxxxx’ -Doceanbase -A

show proxyconfig like ‘%mysql_version%’;

alter proxyconfig set mysql_version=‘8.00.30’;

show proxyconfig like ‘%mysql_version%’;

2 个赞

改了,而且我已经从docker镜像部署换成直接编译安装了,还是报这个 :sweat_smile:


我去,我之前连的一直是ob-server端的2881,看了您这个回答试了下改成obproxy的2883,结果连上了 :joy: