Mysql

  • Comment est géré l’interface dans centreon

    Préambule

    Quand j’ai commencé linux la première phrase qu’on peut lire dans la littérature consacrée est : « tout est dans un fichier ».

    Pour la gestion de l’interface de centreon on peut dire « tout est en base » 😀

    Il m’est arrivé d’avoir des données corrompues ,en arrivant chez mes clients, parce que des personnes, certainement plus intelligentes que les autres, ont crues bon d’écrire directement en base 😛

    Il m’a paru donc important d’expliquer :

    • Comment est gérée l’interface
    • Comment sont affichés les éléments de configuration

    Dans cette suite d’article nous verrons :

    • Le lien entre la base de données et l’affichage des menus dans l’interface
    • Comment centreon affiche les informations dans l’interface depuis les vues
    • Menu Monitoring
    • L’état des services avec application de filtres
    • Menu Configuration
    • Liste des hôtes avec les différents filtres disponibles
    • Liste des services avec les différents filtres

    Les forces en présence

    Les fichiers

    Les fichiers de mise à disposition de l’interface à apache sont présents dans le répertoire /usr/share/centreon/www du serveur web

    Au premier niveau nous avons ci-dessous les répertoires les plus importants :

    • include -> Code php pour afficher les différents menus
    • modules -> Les différents modules opensource ou non installés
    • widgets -> Code des widgets utilisés dans les customviews

    Les bases de données

    Tous les éléments permettant le bon fonctionnement de l’interface sont dans la database centreon. Donc on ne modifie rien dedans par une commande mysql, que ce soit par un insert, drop, update ou tout autre commande farfelue qui pour passer par la tête d’un illuminé.

    On ne fait que des « select » et rien de plus.

    J’espère que c’est écrit suffisamment gros pour que le message soit clair 😀

    Lire la suite« Comment est géré l’interface dans centreon »
  • Database centreon-storage

    Avant-propos

    Il est important de comprendre que la database centreon_storage est la table du temps réel.

    Toutes les données affichées dans la console en dehors des vues configuration et administration proviennent de cette database.

    Il y a un lien entre les databases centreon et centeon_storage ce sont les ID pour :

    • Les hôtes
    • Les différents regroupements
    • Services
    • Hosts
    • Services

    Donc tous les vues temps réel s’appuient sur cette database en utilisant la durée de rétention pour afficher l’historique dans les différentes vues.

    La structure de la database est sensiblement identique à celle de centreon.

    Pour faire un raccourci dans la database centreon les tables sont au singulier et dans centreon-storage au pluriel.

    Ainsi par exemple les tables on peut faire les relations suivantes :

    centreoncentreon_storage
    acl_group_contactgroups_relationscentreon_acl
    hosthosts
    hostgrouphostgroups
    host_service_relation 
    host_template_relation 
    Hostcategories 
    hostcategories_relation 
    hostgroup_hg_relation 
    hostgroup_relationhosts_hostgroups
    dependency 
    dependency_hostChild_relationhosts_hosts_dependencies
    dependency_hostParent_relation 
    host_service_relation 
    host_hostparent_relationhosts_hosts_parents
    servicegroupservicegroups
    serviceservices
    servicegroup_relationservices_servicegroups
    dependency_serviceParent_relationservices_services_dependencies
    dependency_serviceChild_relation 
    dependency_servicegroupChild_relation 
    dependency_servicegroupParent_relation 
    service_categories 
    service_categories_relation 
    nagios_serverinstances

    Nous pouvons noter que certaines tables n’existent pas dans cetreon_storage. Donc la console aura besoin des 2 databases pour afficher les informations dans la console.

    Lire la suite« Database centreon-storage »
  • Création d’une base de données

    But de l’article

    Nous allons créer une base de données qui contiendra une liste de villes avec leur code postal.

    Le but n’étant pas de créer une application mais d’avoir un cas d’ecole simple avec 2 tables pour les jointures.

    Pour cela nous allons créer :

    • Une base de données carnet qui contiendra les tables :
    • Codes postaux
    • Ville

    Pour l’échantillonnage je me suis appuyer sur le référentiel officiel de l’état ici

    Le but sera de pouvoir rechercher :

    • Une ville avec tous les codes postaux
    • Un code postal avec toutes les villes

    Le schéma est très simple :

    • Un code postal peut avoir plusieurs villes
    • Un nom de ville peut avoir plusieurs codes postaux

    Nous le verrons plus bas

    Lire la suite« Création d’une base de données »
  • Mysql Les bases

    But de l’article

    Nous allons voir dans cet article les bases pour se déplacer dans les méandres d’une base de données Mysql.

    Pour cet article nous travaillerons sur une base de données hébergeant un site wordpress.

    Se connecter à MySql

    Quelques règles de sécurité

    Régles de base pour la connection :

    • Les utilisateurs doivent avoir un mot de passe avec :
      • Majuscule
      • Minuscule
      • Caractère spéciaux
    • On ne tape jamais en clair un Mot de passe dans la console
    • je conseil de créer un alias pour les connections mysql avec un mot de passe afin d’avoir un history vierge de tout mot de passe
    Lire la suite« Mysql Les bases »