[Z3005]query failed: [2006] MySQL server has gone away [begin;]というメッセージが出ます。
Zabbix 2.2.9
OS:CentOS
を使用しています。
タイトルのメッセージが出力されています。どのような状況なのでしょうか。
MySQLのチューニングを実施すれば良いのかと思うのですが・・・
アドバイスいただけないでしょうか。
新規にサーバを立てて、最近対象ホストを追加して監視を始めたところなのですが、
上記のエラーが出ています。
※監視はできているように見えるのですが・・・
・OSのメモリは8G
my.cnf
===================================================
[mysqld]
datadir=/data/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
# Disabling symbolic-links is recommended to prevent assorted security risks
# symbolic-links=0
character-set-server=utf8
skip-character-set-client-handshake
innodb_file_per_table
##innodb_buffer_pool_size=512M
innodb_buffer_pool_size=4096M
##innodb_log_buffer_size=16M
innodb_log_buffer_size=32M
##innodb_log_file_size=16M
innodb_log_file_size=256M
innodb_log_files_in_group=2
innodb_additional_mem_pool_size=20M
join_buffer_size=256K
sort_buffer_size=2M
read_buffer_size=1M
read_rnd_buffer_size=1M
log-bin=mysql-bin
sync_binlog=1
innodb_support_xa=on
server-id=1
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
===================================================
Zabbix_server.conf
→添付します。
Pollerの値等を増やしています。
StartPollers=30
StartPollersUnreachable=5
StartPingers=30
StartVMwareCollectors=3
MaxHousekeeperDelete=5000
- my_cnf.txt (918 バイト)
- zabbix_server_conf.txt (13.54 KB)
tomi12120321 - 投稿数: 113
すいません、追加です。
TemplateAppMySQLをZabbixサーバに適用したのですが、
「MySQL status」キー:mysql.ping がDOWN状態になっています。
※Mysqlバージョン: mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu(X86_64) using readline 5.1
TNK - 投稿数: 4769
ターミナル上から以下のコマンドを実行してみてください。
mysqladmin ping
tomi12120321 - 投稿数: 113
以下のメッサージが表示されました。
mysqladmin:connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' failed
tomi12120321 - 投稿数: 113
mysqladmin ping -u root -p コマンドでパスワードを入力するとmysqld is aliveを確認できました。
お騒がせしました。
userparameterでの監視なんですね。
tomi12120321 - 投稿数: 113
本日再度zabbix_server.logを確認したところ、以下のメッセージが出ていました。
[Z3005] query failed: [2006] MySQL server has gone away [select hostid,key_,state,filter,error,lifetime from items where itemid=23886]
KAZ - 投稿数: 1085
tomi12120321さん
無視してください。
あまり影響のないメッセージです。
Zabbixはtrapperプロセス毎にセッションもってるんですけど、
長い間DBとの通信しないとMySQLから接続が着られてしまい、
その後trapperプロセスからSQL実行しようとするとこのメッセージが出ます。
直訳すると…
MySQL server has gone away
MySQLサーバがいなくなった
つまり、「SQL実行しようとしたらセッション切られてました。」と言う警告です。
その後、Zabbixは接続しなおして再度SQL実行しますので問題無いです。
メッセージ消したい場合、trapperプロセスが遊んでいるようなら減らしてください。
その他、MySQLのwait_timeoutを大きくしてください。
tomi12120321 - 投稿数: 113
TNKさん・KAZさん、ご連絡ありがとうございました。
無視してもよいメッセージなんですね。一安心しました。
チューニングのバランスが悪く表示されているのかと思いました。
ご回答をいただく前に調べて以下のようにパラメータを設定しました。
お手数ですが
何か気づいた点がありましたらアドバイスいただけると助かります。
===========================================
[mysqld]
datadir=/data/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
# Disabling symbolic-links is recommended to prevent assorted security risks
# symbolic-links=0
character-set-server=utf8
skip-character-set-client-handshake
innodb_file_per_table
##innodb_buffer_pool_size=512M
innodb_buffer_pool_size=4096M
##innodb_log_buffer_size=16M
##innodb_log_buffer_size=32M
innodb_log_buffer_size=64M
##innodb_log_file_size=16M
innodb_log_file_size=256M
innodb_log_files_in_group=2
innodb_additional_mem_pool_size=20M
join_buffer_size=256K
max_allowed_packet=8M
sort_buffer_size=4M
read_buffer_size=1M
read_rnd_buffer_size=1M
log-bin=mysql-bin
sync_binlog=1
innodb_support_xa=on
server-id=1
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
===========================================
TNK - 投稿数: 4769
MySQLの設定だけでは、システムとして適切な状態であるのかを判
断はすることはできません。
Zabbixだけを考慮したとしても、監視する対象の数だけではなく、
それぞれの値を取得する頻度にも依存しますし、Webインターフェ
ースの利用者数やよく参照する画面などによっても負荷の傾向は変
わってきます。
サーバの負荷状況などを考慮して適宜チューニングを行ってくださ
い。
発生している兆候によっては、OS、MySQL、Zabbix、httpdなどそれ
ぞれの箇所で設定することが必要となるかもしれません。
ボトルネックになりやすいのは、MySQLの部分ではありますが、監
視するアイテム数や頻度が多い場合は、Pollerと呼ばれるプロセス
の数を増やすなどの対応が必要になります。
Zabbixサーバ側の各機能毎のプロセスのbusy率やキューの状態など
は時々確認しておくと良いでしょう。
tomi12120321 - 投稿数: 113
TNKさん
ご回答ありがとうございます。
サーバの状況を随時確認して対応していきます。
また何かありましたフォーラムにあげさせていただきます。