Zabbix monitoring network 9: Convert character Zabbix Database

9. Convert character Zabbix Database

Qua các bài trước, chúng ta đã có thể dựng được một server zabbix network monitoring.

Tuy nhiên, khi vào main dashboard của zabbix, chúng ta sẽ gặp lỗi “Inncorrect default charset for Zabbix database: “latin1” instead “UTF8” “.

Bài này, mình xin chia sẽ với các bạn cách fix lỗi này.

Hình 9.1: Lỗi Incorrect default charset

Lỗi này do default character của Zabbix database của chúng ta đang là latin1. Trong khi đó, Zabbix sẽ sử dụng UTF8.

Đầu tiên, các bạn stop service zabbix

systemctl stop zabbix-server

Sau đó, chúng ta tiến hành backup database zabbix. Nếu các bạn sử dụng máy ảo, các bạn có thể sử dụng snap short ( đối với Vmware ) hoặc Checkpoint ( đối với Hyper-V) để backup nhanh hơn.

Sau đó, chúng ta vào mysql bằng lệnh

mysql -u root -p

Do ở bài Zabbix monitoring network 2: Triển khai Zabbix Monitoring Server, chúng ta đã tạo tên zabbix database chúng ta là Zabbixitforvn nên chúng ta sẽ đi kiểm tra database này.

Sau đó, kiểm tra default character của Zabbix database:

Hình 9.2: Check default character database

Tiếp theo, ta sẽ thay đổi character default của database itforvn sang UTF8 :

Hình 9.3: Change default character của Zabbixitforvn

Kiểm tra lại default của character của Database Zabbixitforvn

Hình 9.4: Check default character sau khi convert

Tuy nhiên, do chúng ta đã sử dụng database này vào việc lưu trữ thông tin của Zabbix và hệ thống cũng đã chạy một thời gian, nên các table trong database này vẫn đang sử dụng latin1 thay vì UTF8.

Tiếp theo, chúng ta sẽ convert default character của các table trong Database Zabbixitforvn sang utf8.

Hình 9.5: Change default character của các table trong Zabbixitforvn

Sau khi tiến hành convert xong tất cả table trong database Zabbixitforvn, chúng ta start service zabbix bằng lệnh:

systemctl start zabbix-server

Chúng ta sử dụng browser để đăng nhập vào mainboard zabbix và kiểm tra.

Hình 9.6: Hoàn tất convert default character to UTF8

Tuy nhiên, với một số bạn, khi đăng nhập vào mainboard, chúng ta sẽ xuất hiện lỗi sau:

Hình 9.7: Unsupport charset or collation for tables error

Lỗi này xuất hiện là do các tabalse trong thông tin lỗi chưa được covert thành UTF8.

Do đó, chúng ta vào mysql, chọn database zabbixitforvn bằng lệnh :

 mysql -u root -p zabbixitforvn

Tiếp theo, chúng ta sẽ sử dụng câu lệnh :

ALTER TABLE zabbixitforvn.”tên của table chưa được chuyển đổi” CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;

Chúng ta sẽ nhập câu lệnh này với từng table có trong bảng thông tin lỗi.

Các bạn có thể copy các tên table ra file excel, sử dụng một xíu động tácvà chúng ta sẽ có list lệnh như sau:

ALTER TABLE zabbixitforvn.housekeeper CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.hstgrp CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.httpstep CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.httpstep_field CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.httptest CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.httptest_field CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.icon_map CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
ALTER TABLE zabbixitforvn.icon_mapping CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; 
.....

Sau khi hoàn tất covert, các bạn vào trang mainboard của zabbix , lỗi sẽ biến mất.

5/5 - (1 vote)

Leave a Reply

Your email address will not be published. Required fields are marked *