トリガー名について

お世話になります。

現在、icmppingを利用した死活監視を行っております。
トリガーの設定において、トリガー名には現在以下を設定しています。
 "Host {HOSTNAME} is unreachable"

このトリガー名を日本語で設定したいのですが、設定をすると"????"と設定名が変更されてしまいます。

利用環境は以下の通りとなりますが、解決案はありますか?
・利用機器:OpenBlockS AX3
・OS:armv7l Debian wheezy
・Zabbixのバージョン:1.8.2

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

まずは、Zabbix用に作成したデータベースの文字コードがutf8にな
っているか確認してみてください。

ユーザー albiero の写真

ご回答ありがとうございます。

"show variables like 'char%';"および、"show table status;"の内容を確認し、utf8へと変更し、反映を確認しました。
その後、再度トリガー名に2バイト文字を入れてみると、今度は以下の様なエラーが発生します。
###
Error in query [SELECT DISTINCT t.* FROM triggers t,functions f,items i,hosts h WHERE ((t.triggerid BETWEEN 000000000000000 AND 099999999999999)) AND t.description='Host {HOSTNAME} is unreachableあああ' AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND h.hostid=i.hostid AND h.host='********'] [Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=']
###

また、mysqlの/etc/myslq/my.cnf内で以下を追加しています。
[mysqld]
init-connect='SET NAMES utf8';

設定情報上はUTF8になっていますが、まだ何か足りてないのでしょうか…

ユーザー KAZ の写真
albieroさん

足りてないような…A(^^;
こんなかんじになってますか?
mysql> SHOW VARIABLES LIKE 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.02 sec)

mysql> SHOW VARIABLES LIKE 'coll%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
一度、mysqldumpしてデータ領域を削除してから作りなおしてデータリストアしたらどうなりますか?
ユーザー albiero の写真

KAZさん、ご回答ありがとうございます。

双方とも確認しておりますが、結果に差分も無く、各テーブルも既にutf8へと変更しておりまして…
データベースを作り直して試してみたいと思いますorz

ユーザー KAZ の写真

albieroさん

下記のメッセージだとlatin1とutf8が混じっているといっているような…
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='

データを移行しなくて良いならDBのみ最初から作ったほうが綺麗になると思います。A(^^;

ユーザー TNK の写真

何をどのように実行してutf8に変更されたのでしょうか?

エラーメッセージを拝見する限り、文字コード、特に照合順序設定
の整合性が取れていないようです。
変更前の状態と、どのような手順で変更されたのかお教えください。

ご参考までに、以下のURLでkodaiさんが書かれていますが、データ
ベースの文字コードだけではなく、

 SHOW TABLE STATUS;

などを利用して各テーブルの状態も確認して、照合順序などが統一
されていないようであれば、テーブルがutf8に統一できていない可
能性が考えられますので、

 ALTER TABLE テーブル名 CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

などと実行して、文字コードと照合順序で利用するコードをきちん
と統一してみてください。

ご参考:
  http://www.zabbix.jp/node/975

ユーザー albiero の写真

TNKさん、KAZさん、ご協力ありがとうございます。

各テーブルの文字コードをlatin1→utf8への変換は既に実施しておりまして、show table status;等のコマンド上ではutf8で反映を確認しております。

KAZさんからのアドバイスを受け、mysqldumpを実施し、以下の手順を行う事により無事に日本語表示が可能となりました。
/////
# /etc/init.d/zabbix-server stop
# mysqldump -u root -p zabbix > /root/mysqldump.db
# mysql -u root -p
mysql> drop database zabbix;
mysql> create database zabbix character set utf8;
mysql> quit
# perl -pi -e 's/latin1/utf8/' /root/mysqldump.db
# mysql -u root -p zabbix < zabbix.db
# /etc/init.d/zabbix-server start
/////

"show variables like 'char%';"や、"show table status"の確認しか行っておりませんでしたので、当方の確認漏れかと思います。
最初からログを掲載出来なかったのも反省点ですorz

この度は誠にありがとうございました。