Charger un pack d'images dans la base Zabbix

Sur Zabbix tout (mais alors vraiment tout ;)) est stocké dans la base de donnée. Y compris les images utilisées pour créer des zolies cartes (sous forme de BLOB). L'interface web permet de charger les images une par une, mais c'est pas terrible quand on a un grand nombre à importer. Voila une technique pour le faire

Copier les images dans un répertoire sur le serveur de base de donnée (par exemple /tmp/zabbix_img

Donner les droits d'accès à ce répertoire pour l'utilisateur qui fait tourner la DB (mysql)

chown -R mysql /tmp/zabbix_img

Repérer l'ID de la dernière images chargé dans zabbix

Il faut fouiller dans la table images l'ID le plus élevé. Dans cet exemple, ça sera 22

Insérer les images:

CNT=22; for PNG in $(ls ./*.png); do mysql zabbixdb -e "INSERT INTO images VALUES($CNT,1,'$(basename $PNG .png)',load_file('/tmp/zabbix_img/$PNG'))";CNT=$(($CNT+1)); done