Zabbix西里尔字母错误

时间:2018-02-06 08:01:25

标签: zabbix

我在zabbix中遇到charsets的麻烦。 我使用zabbix 3.4v,我尝试将DB charsets更改为UTF8,cp1251,latin1,什么都没有帮助我。 我的zabbix代理使用西里尔字符发送到服务器值,但zabbix服务器接收所有带有问号的服务器。我该怎么办? 如何解决问题?

1 个答案:

答案 0 :(得分:0)

您很可能没有将数据库正确设置为utf8,这只是他支持的编码。但是,你还没有指定数据库引擎。对于MySQL,仅改变表的编码是不够的,现有数据也必须转换。

以下内容应设置默认值并转换所有表(假设MySQL身份验证已正确配置)。请注意,这可能需要很长时间才能在大型数据库中使用。

确保在执行此操作之前进行数据库备份。

mysql -N zabbix -e 'ALTER DATABASE zabbix DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;'
for table in $(echo "show tables;" | mysql -N zabbix); do echo "ALTER TABLE $table CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;" | mysql -N zabbix; done