Zabbix DBのアップグレードの進捗状況について

サーバA ( Zabbix 2.4.5 )からサーバB ( Zabbix 4.2.1 ) へのZabbixのDBファイルの移行を行っております。

サーバA ( Zabbix 2.4.5 ) でDBをdump (mysqldump)し、サーバB ( Zabbix .4.2.1 ) にDBへのリストアし、Zabbix Serverを起動させました。

起動から1時間近く経過しても、ログを見る限り、アップグレードが処理の進捗が表示されません。


$ tailf /var/log/zabbix/zabbix_server.log

====================================================
16210:20190516:011949.422 Starting Zabbix Server. Zabbix 4.2.1
16210:20190516:011949.422 ****** Enabled features ******
16210:20190516:011949.423 SNMP monitoring: YES
16210:20190516:011949.423 IPMI monitoring: YES
16210:20190516:011949.423 Web monitoring: YES
16210:20190516:011949.423 VMware monitoring: YES
16210:20190516:011949.423 SMTP authentication: YES
16210:20190516:011949.423 Jabber notifications: NO
16210:20190516:011949.423 Ez Texting notifications: YES
16210:20190516:011949.423 ODBC: YES
16210:20190516:011949.423 SSH2 support: YES
16210:20190516:011949.423 IPv6 support: YES
16210:20190516:011949.424 TLS support: YES
16210:20190516:011949.424 ******************************
16210:20190516:011949.424 using configuration file: /etc/zabbix/zabbix_server.conf
16210:20190516:011949.645 current database version (mandatory/optional): 03010000/03010000
16210:20190516:011949.645 required mandatory version: 04020000
16210:20190516:011949.646 starting automatic database upgrade
=================================================

zabbix-serverおよび、mysqldのプロセスはともに起動しており、アップグレード処理が継続しているのか、
処理が停止してしまっているのか判断できない状態です。

単純に時間がかかっているだけなのか、何らかの理由でハングアップしてしまっているのか、
判断する方法はありますでしょうか。

以上、よろしくお願い申し上げます。

コメント表示オプション

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

zabbix_serverプロセスやmysqldプロセスの稼働状況を確認してみ
てください。

例えば、psコマンドやtopコマンドを使用して、両方のプロセスが
多くCPUやメモリを消費しているのであれば、処理を行っている可
能性があります。

両方のプロセスのCPUやメモリの消費が低いままであった場合は、
何らかの要因で処理が止まってしまっているのかもしれません。
MySQLやOS自体のログも確認してみてください。

ありがとうございます。

zabbix_serverのプロセスのCPU使用率を確認したところ、使用率が0%になっており、
何らかの理由で、ハングアップしてした可能性が高そうです。

MySQL、シスログなども確認しましたが、デーモンの起動を示すログ以外は特に出力されていませんでした。

ハングアップしたと仮定して、調査しようと思います。

ご回答、ありがとうございました。

各テーブルの状態の状態を確認したところ、historyとhistory_logのテーブルからレコードのSELECTができなかったため、対象のテーブルの過度な肥大化、または破損が原因ではないかと思われます。

止む得ず対象のテーブルを削除したところ、正常にupgradeが行われるようになりました。

/usr/bin/mysql -u zabbix -p -D zabbix -e "TRUNCATE TABLE zabbix.history_log"
/usr/bin/mysql -u zabbix -p -D zabbix -e "TRUNCATE TABLE zabbix.history"