Zabbix 可以用中文輸入
會看到這篇文章表示目前的資料庫字集不支援中文
如果之前是照官方方法設定,資料庫語系會是latin1
修改語系的方式目前找到的方法是:
1. 暫停Zabbix服務 (建議)
2. 修改資料庫的預設字集 (這一步其實可以不用)
3. 倒出資料庫的資料 (會等很久)
4. 複製一份備份出來的資料 (怕出現不可預期的錯誤)
5. 用sed指令修改資料庫內的table語系
6. 倒回資料庫
1. 暫停Zabbix服務
建議執行,可以加快備份速度
service zabbix-server stop
2. 修改資料庫的預設字集
先登入資料庫
mysql -uzabbix -p zabbix
輸入資料庫使用者 zabbix 的密碼,進到mysql指令介面
mysql> ALTER DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
mysql> quit;
3. 倒出資料庫的資料
這個動作依照資料庫大小大概在10分鐘倒30分鐘不等
mysqldump -uzabbix -p zabbix --skip-lock-tables > zabbix.tmp.sql
4. 複製一份備份出來的資料
cp zabbix.tmp.sql zabbix.tmp.sql.backup
5. 用sed指令修改資料庫內的table語系
sed -i 's/CHARSET=latin1/CHARSET=utf8\ COLLATE=utf8_bin/g' zabbix.tmp.sql
6. 倒回資料庫
cat zabbix.tmp.sql | sudo mysql -uzabbix -p zabbix
輸入資料庫使用者 zabbix 的密碼,開始恢復資料
7. 啟動Zabbix Server
service zabbix-server start
到此已經可以在資料庫中輸入中文,如果要讓繪製的圖形也可以用中文要照底下的步驟進行
修改字型
預設的圖形字型不能顯示中文,因此需要修改字型
先到Windows的 "字型",找到微軟正黑體(建議),點兩下進去後找到微軟正黑體 粗體
按右鍵複製到桌面,這個字型檔的副檔名是 ttc ,要改成ttf
複製到Zabbix伺服器內,把字型檔複製到Zabbix的字型檔資料夾
sudo cp msjhbd.ttf /usr/share/zabbix/fonts
sudo chmod 777 /usr/share/zabbix/fonts/msjhbd.ttf
修改PHP的設定檔,讓Zabbix使用剛剛上傳的字型
sudo vi /usr/share/zabbix/include/defines.inc.php
找到底下兩個
define('ZBX_GRAPH_FONT_NAME', 'graphfont')
define('ZBX_FONT_NAME', 'graphfont')
改成
define('ZBX_GRAPH_FONT_NAME', 'msjhbd')
define('ZBX_FONT_NAME', 'msjhbd')
儲存離開,字型就改好了
留言
發佈留言