zabbix部分地方中文乱码--数据库编码引起

历史记录处出现问号乱码,如下图

这与zabbix数据库所使用的字符集有关,解决方法如下:
1.查看当前的默认字符集
mysql> show create database zabbix;
+----------+-------------------------------------------------------------------+
| Database | Create Database                                                   |
+----------+-------------------------------------------------------------------+
| zabbix   | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-------------------------------------------------------------------+
1 row in set (0.00 sec)
#安装时在导入三个sql文件时,zabbix数据库中创建的表的字符集也是latin1
mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
2.这是由于字符集不是utf8引起的,现在的解决方法有两种:
当当前zabbix数据库中已存在一定的数据的解决办法
1)备份zabbix数据库
[root@zhu1 ~]# mysqldump -uroot -p123456  zabbix > zabbix.sql
2)修改备份文件
[root@zhu1 ~]# sed -i 's/latin1/utf8/g' zabbix.sql
3)删除zabbix数据库
mysql> drop database zabbix;
4)关闭mysql数据库,设置默认字符集
[root@zhu1 ~]# vim /etc/my.cnf
[mysqld]
log-bin
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
default-character-set = utf8 #添加该项
5)启动mysql并恢复zabbix数据库
[root@zhu1 ~]# mysql -uroot -p123456 zabbix < zabbix.sql
mysql> show create database zabbix;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| zabbix   | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
6)访问页面

posted @ 2019-02-10 13:28  消磨_时间  阅读(348)  评论(0)    收藏  举报