zabbix 中文不能寫入數據庫的問題

zabbix在設置監控的時候,若是鍵入中文,點擊update會提示錯誤

  • 這是由於咱們在將數據庫文件導入數據庫時沒有修改裏面的字體致使
  • 由於咱們已經安裝完成了zabbix,而且MySQL裏面已經有了不少數據,咱們不能使用從新安裝的方式來修改。
  • 能夠將數據庫文件導出,將字體修改以後再導入進去便可。
    • 在my.conf裏面定義字符集格式,修改爲utf8
    character_set_database = utf8
    	character_set_server = utf8
    • 將數據庫文件導出(也就是之後用到的備份方式)
    mysqldump -uroot -pxxxxx --default-character-set=utf8 zabbix > zabbix.sql
    • 修改導出的數據庫,將文件中全部的latin1修改成utf8
    vim zabbix.sql
    	:1,$s/latin1/utf8/g
    ** ##在通常模式下,按下:鍵,輸入1,$s/latin1/utf8/g。表示從第一行到尾行($),s表示替換,將latin1替換爲utf8 g是global全局替換。**
  • 而後回到zabbix的UI界面,發現可使用中文了。

在zabbix UI 界面中的圖形選項中發現中文是亂碼顯示的。

  • 這是由於zabbix的文字格式中沒有中文的格式
    • 先查看字體文件作在的位置
    vim /usr/share/zabbix/include/defines.inc.php  #搜索fonts
    	define('ZBX_FONTPATH',                          realpath('fonts')); // where to search for font (GD > 2.0.18)
    	define('ZBX_GRAPH_FONT_NAME',           'graphfont'); // font file name
    • cd /usr/share/zabbix/fonts進入到這個目錄,它下面的文件就是字體文件
    • 去Windows上拷貝一箇中文字體的文件放到這個目錄裏
      • c盤windows/fonts目錄中有簡體中文,將文件複製到桌面上
      • 在Linux上執行rz,將字體文件上傳至Linux機器上。
    • 將原先的字體文件更名爲.bak,而後將新的字體文件改成原先的字體文件。
    • 這樣回到zabbix的UI 界面,發現已是中文顯示了。
相關文章
相關標籤/搜索