Comprendre la structure de la base de données

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Comprendre la structure de la base de données

    Bonjour,


    je souhaiterais mieux comprendre la structure de la base de données d’un site Joomla (Joomla 3.9.6.).

    Qu’en est-il des clés primaires et étrangères dans les tables?


    Comment exporter puis reconstruire une base de données personnalisée, cohérente et adaptée, en conservant la structure de la base actuelle et les clés des tables ?


    merci de vos éclaircissement…

  • #2
    Envoyé par alog44 Voir le message
    Bonjour,
    ...reconstruire une base de données personnalisée, cohérente et adaptée...
    Euh, là il faudrait nous expliquer plus.

    Les tables de la base de donnée et leurs index sont créés lors de l'installation ou des mises à jours des composants en fonction de leurs besoins.
    Ce n'est pas à toi de "faire le ménage" là dedans.

    Ou alors je n'ai pas compris la demande.
    A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
    Rejoignez le Joomla Users Groupe Alsace...
    roland_d_alsace va-t-il devenir roland_du_grand_est ?

    Commentaire


    • #3
      Bonsoir,

      Même remarque que Roland. De plus, sauf erreur de ma part, il n'y a pas de clés étrangères dans les tables Joomla.

      Pour sauvegarder/restaurer une base de données, rien de tel qu'akeeba backup et son outil de restauration kickstart.

      D'autre part, nous sommes aujourd'hui en 3.9.10. Pensez à faire la mise à jour, même si les correctifs apportés depuis votre version ne sont pas très nombreux.

      Pascal

      If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

      Commentaire


      • #4
        +1 avec la remarque de Pascal.

        Il n'y a pas de contrôle d’intégrité référentielle fait par le SGBD donc pas de clés étrangères.

        Je suppose que cela vient du fait qu'il n'y a pas encore si longtemps, on utilisait myIsam comme moteur au lien de innodb.
        Le contrôle est donc fait par le framework qui est bien conçu pour cela (classe JTable méthodes check et store).

        myisam est très robuste et se gère facilement table par table (tout est dans des fichiers séparés, le contenu, les index, les blobs, etc... ceci pour chaque table) mais est un peu vieillot (pas de transaction, pas de clés étrangères, pas de procédures stockées, etc...).
        Moi je l'utilise (c-isam) depuis.... ...les années 1980 donc c'est pas tout jeune.

        innodb est bien plus complexe et puissant (tout est dans un seul "conteneur"), donc quand ca casse, il faut remonter les sauvegardes et passer les journaux de transactions. Il faut donc un administrateur déjà plus costaud.
        Mais sur des serveurs bien montés et sécurisés c'est aussi très stable, je n'ai jamais connu de gros problème.

        A ce jour les tables du core et des composants livrés avec Joomla sont toutes passée sous InnoDB, mais ce n'est pas encore le cas de toutes les extensions tierces.
        Dernière édition par roland_d_alsace à 10/07/2019, 21h46
        A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
        Rejoignez le Joomla Users Groupe Alsace...
        roland_d_alsace va-t-il devenir roland_du_grand_est ?

        Commentaire


        • #5
          Bonjour,

          il n’est pas question ici de « faire le ménage » dans la database, mais je souhaiterai exporter mon site Joomla vers un autre site hors CMS.

          L’export n’est pas un problème.
          Mais avant de (ré)importer les données dans une nouvelle base sur mesure, il semble qu’il faille reconstruire la structure de la base de données Joomla + Flexicontent pour l’adapter et la rendre lisible et cohérente sur le nouveau site.

          Aussi si quelqu’un pouvait m’expliquer comment est structurée la base de données d’un site Joomla ?

          Y’a t’il des plugins qui permettent de faire un export des données vers un fichier CSV ou XML?

          Commentaire


          • #6
            Envoyé par alog44 Voir le message
            Bonjour,

            il n’est pas question ici de « faire le ménage » dans la database, mais je souhaiterai exporter mon site Joomla vers un autre site hors CMS.

            L’export n’est pas un problème.
            Mais avant de (ré)importer les données dans une nouvelle base sur mesure, il semble qu’il faille reconstruire la structure de la base de données Joomla + Flexicontent pour l’adapter et la rendre lisible et cohérente sur le nouveau site.

            Aussi si quelqu’un pouvait m’expliquer comment est structurée la base de données d’un site Joomla ?

            Y’a t’il des plugins qui permettent de faire un export des données vers un fichier CSV ou XML?
            Comme extension il y a l'excellent CSV Improved de Roland Dalmulder.
            Sinon, en gratuit il y a j2xml... qui exporte logiquement en xml...
            Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

            Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

            Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

            Commentaire


            • #7
              Envoyé par alog44 Voir le message
              Bonjour,

              il n’est pas question ici de « faire le ménage » dans la database, mais je souhaiterai exporter mon site Joomla vers un autre site hors CMS.
              ...
              OK c'est effectivement + clair ainsi.

              Mais franchement penses-tu arriver à faire cet export assez périodiquement pour maintenir les 2 DB suffisement synchrones ??

              Cet autre site a il déjà sa propre structure de données ou est-il à écrire ?

              Le plus simple est soit d'attendre J4 et le webservice (fin 2019 au + tôt).

              Sinon pourquoi pas d’accéder directement à la DB de Joomla, il suffit d'ouvrir le port de mysql au niveau du firewall et du my.ini avec des privilèges en lecture seule.

              Sinon tu peux aussi faire un bridge entre les 2 sites, avec les événements de Joomla c'est assez facile si tu es développeur.
              Il te suffira d'écrire un plugin qui mettra à jour la DB de l'autre site à chaque mise à jour de la DB Joomla (au moins celles qui t’intéressent).

              Envoyé par alog44 Voir le message
              ...
              Aussi si quelqu’un pouvait m’expliquer comment est structurée la base de données d’un site Joomla ?
              Il faudrait dire quoi en particulier, vu tout ce qui est géré par Joomla, sinon il faudrait écrire un bouquin.
              Dernière édition par roland_d_alsace à 11/07/2019, 15h09
              A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
              Rejoignez le Joomla Users Groupe Alsace...
              roland_d_alsace va-t-il devenir roland_du_grand_est ?

              Commentaire

              Annonce

              Réduire
              Aucune annonce pour le moment.

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X