Exploitation

Migration des tables

La ligne de commande exécute la procédure suivante:

  • Renomme la table existante (‘xxx’ devient ‘xxx_old’)
  • Crée une table partitionnée vide
  • Migre les données dans la table partitionnée (instructions ‘SELECT INSERT’)

Warning

Des vérifications doivent être faites avant:

  • L’espace disponible sur le volume sur lequel se trouvent les bases MySQL doit être suffisant pour contenir deux fois la taille des tables traitées (Indexes + données).
  • Les tables ne doivent pas contenir de données dans le futur (le temps est un facteur clé pour la mise en place du partitionnement).
  • La mémoire sur le serveur MySQL doit être suffisante.

Warning

Les requêtes/instructions ‘SELECT INSERT’ vont verrouiller la table et probablement certains traitements.

La migration de la table est effectuée en utilisant l’option ‘-m’:

# php /usr/share/centreon-partitioning/bin/centreon-partitioning.php -m /etc/centreon/centreon-partitioning/partitioning-data_bin.xml

Si la migration de la table est ok l’ancienne table peut être supprimée avec la commande suivante:

# mysql centreon_storage
mysql> DROP TABLE data_bin_old;

Mise à jour des tables

Une fois le partitionnement effectué un script cron sera exécuté tous les jours:

0 4 * * * centreon /usr/bin/php /usr/share/centreon/cron/centreon-partitioning.php >> /var/log/centreon/centreon-partitioning.log 2>&1