溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Zabbix監(jiān)控 之 字符集問(wèn)題【4】

發(fā)布時(shí)間:2020-07-15 11:35:21 來(lái)源:網(wǎng)絡(luò) 閱讀:973 作者:無(wú)法長(zhǎng)大 欄目:數(shù)據(jù)庫(kù)

ix監(jiān)控中常碰到的字符集問(wèn)題有三個(gè):


1.圖形中顯示中文亂碼

Zabbix監(jiān)控 之解決zabbix圖中出現(xiàn)中文亂碼問(wèn)題【附屬】

Zabbix監(jiān)控 之 字符集問(wèn)題【4】

解決方法:


1

2

3

4

5

6

#1.從window主機(jī)路徑C:\Windows\Fonts下選擇一種自己喜歡的字體,如mysh.ttf(雅黑);

#2.將拷貝出來(lái)的字體上傳到zabbix server網(wǎng)頁(yè)文件的fonts目錄下,并命名為

DejaVuSans.ttf

[root@zhu1 ~]# mv /var/www/html/fonts/DejaVuSans.ttf /var/www/html/fonts/DejaVuSans.ttf.old

mv/var/www/html/fonts/mysh.ttf /var/www/html/fonts/DejaVuSans.ttf

#這樣便能解決這個(gè)亂碼問(wèn)題



2.歷史記錄處出現(xiàn)問(wèn)號(hào)亂碼,以及無(wú)法更新,功能報(bào)數(shù)據(jù)庫(kù)長(zhǎng)亂碼錯(cuò)誤。


Zabbix監(jiān)控 之 字符集問(wèn)題【4】

這與zabbix數(shù)據(jù)庫(kù)所使用的字符集有關(guān),解決方法如下:


1.查看當(dāng)前的默認(rèn)字符集


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

mysql> show create database zabbix;

+----------+-------------------------------------------------------------------+

| Database | Create Database                                                   |

+----------+-------------------------------------------------------------------+

| zabbix   | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET latin1 */ |

+----------+-------------------------------------------------------------------+

1 row inset(0.00 sec)

#安裝時(shí)在導(dǎo)入三個(gè)sql文件時(shí),zabbix數(shù)據(jù)庫(kù)中創(chuàng)建的表的字符集也是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 inset(0.00 sec)


2.這是由于字符集不是utf8引起的,現(xiàn)在的解決方法有兩種:

當(dāng)當(dāng)前zabbix數(shù)據(jù)庫(kù)中已存在一定的數(shù)據(jù)的解決辦法

1)備份zabbix數(shù)據(jù)庫(kù)


1

[root@zhu1 ~]# mysqldump -uroot -p123456  zabbix > zabbix.sql

2)修改備份文件


1

[root@zhu1 ~]# sed -i 's/latin1/utf8/g' zabbix.sql

3)刪除zabbix數(shù)據(jù)庫(kù)


1

mysql> drop database zabbix;


4)關(guān)閉mysql數(shù)據(jù)庫(kù),設(shè)置默認(rèn)字符集


1

2

3

4

5

6

[root@zhu1 ~]# vim /etc/my.cnf

[mysqld]

log-bin

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

default-character-set= utf8 #添加該項(xiàng) or

character-set-server=utf8 


5)啟動(dòng)mysql并恢復(fù)zabbix數(shù)據(jù)庫(kù)


1

[root@zhu1 ~]# mysql -uroot -p123456 zabbix < zabbix.sql


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

mysql> show create database zabbix;

+----------+-----------------------------------------------------------------+

| Database | Create Database                                                 |

+----------+-----------------------------------------------------------------+

| zabbix   | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET utf8 */ |

+----------+-----------------------------------------------------------------+

1 row inset(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 inset(0.00 sec)

6)訪問(wèn)頁(yè)面

2.當(dāng)安裝后發(fā)現(xiàn),則可以:

Zabbix監(jiān)控 之 字符集問(wèn)題【4】

1

2

3

#1.刪除zabbix數(shù)據(jù)庫(kù)

#2.設(shè)置mysql數(shù)據(jù)庫(kù)的默認(rèn)字符集為utf8

#3.重新創(chuàng)建zabbix數(shù)據(jù)庫(kù)并導(dǎo)入三個(gè)sql文件



總結(jié):

2

1

2

3

4

5

6

7

8

9

10

11

12

--with-charset=CHARSET

Default character set, use one of:

binary

armscii8 ascii big5 cp1250 cp1251 cp1256 cp1257

cp850 cp852 cp866 cp932 dec8 eucjpms euckr gb2312 gbk geostd8

greek hebrew hp8 keybcs2 koi8r koi8u

latin1 latin2 latin5 latin7 macce macroman

sjis swe7 tis620 ucs2 ujis utf8

--with-extra-charsets=CHARSET,CHARSET,...

Use charsets inaddition to default (none, complex,

all, or a list selected from the above sets)

#上面這兩個(gè)是編譯安裝mysql事對(duì)字符集設(shè)置的參數(shù),當(dāng)不進(jìn)行設(shè)置時(shí)默認(rèn)便是latin1,


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI