Partage
  • Partager sur Facebook
  • Partager sur Twitter

Relié base externe à une base local

dAvec traitement par application

Sujet résolu
    29 juin 2010 à 22:22:45

    Bonjour à tous ! :D

    Je suis actuellement en stage et j'ai un petit soucis ! On m'a demandé de concevoir un site Web (3 formulaires) entièrement dynamique et gérable par panneau d'admin, chose que j'ai faite.
    Les données récupérées dans ces formulaires sont inscrite dans la BDD Mysql du serveur dédié en ligne de l'entreprise (OVH et kimsufi je crois).

    Désormais, on me demande de concevoir une application locale, permettant de récupérer ces données, les traiter, et de remettre à jour la BDD.

    J'ai pensé a deux solution: o_O

    Soit l'application se connecte à la base distante, récupère les données, les met en forme (Exemple: Dataset sur Vbnet, ou tableur, ou autre à vous de m 'aiguiller), puis met à jour la base distante.(Par quel moyens?)

    Soit on installe un SGBD sur un serveur local, on relie la base de ce SGBD avec la base en ligne, et à chaque mise a jours, les changements se font automatiquement (enfin je suppose), un peu comme une relation Esclaves-Maitre :p. (est ce possible? comment?)

    J'aimerai donc savoir, quelle solution ou autre solution adopter, et des pistes pour les mettre en place !
    J'espère avoir était suffisamment clair, Merci d'avance à tous ! :)
    • Partager sur Facebook
    • Partager sur Twitter
      30 juin 2010 à 21:57:57

      Salut,

      Si tu as comme tu semble l'indiquer le choix du langage je te conseille le VB6 très simple à utiliser, surtout pour les connexions vers des base de données grâce à l'objet ADODB.RecordSet.

      Il est évident que l'inconvénient c'est que si tu dois mettre à jour le programme, faudra passer par tous les postes, sauf si c'est géré par serveur mais je pense pas. Dans ce cas l'application web sur un serveur local semble la plus intéressante à mon gouts, mais quitte à faire, le mieux serait encore de pouvoir créer l'appli sur le serveur distant bien que je pense que si tu pouvais le faire, tu y aurais pensé ;)

      Voila les pistes de réflexion qui me semble les plus judicieuses dans ce cas...
      Bonne chance pour le suite. :)
      • Partager sur Facebook
      • Partager sur Twitter
        30 juin 2010 à 23:00:51

        Bonsoir, merci de ta réponse ! :D

        Pour ce qui est de créer l'application carrément à distance; ça m'aurait vraiment faciliter la tache ! à grand coup de PHP ^^ mais malheureusement on m'a imposé certaines contraintes comme tu l'as deviné ! :(
        J'ai une idée mais j'aimerai savoir si c'est possible

        - L'appli doit être interne, en local
        - La base distante récupère les candidatures
        - Une base locale avec Mysql Server est mise en place afin "d'accueillir" les données de la BDD distante Mysql

        Puis 2 possibilités :
        - Les deux bases mysql sont reliées ( replication) C'est possible ?
        - L'appli se connecte a la base distante, et MAJ la base locale avec les données récupérés.

        Puis

        - On modifie/traite les données de cette base locale que l'on sauvegardera regulierement.
        - Pour la base en ligne, soit on laisse tel quelle soit on supprime les données qu'on a récupérés afin de l'alléger.

        Sachant que je le précédent stagiaire à finit toutes les autres fonctionnalités (envoi de mail, impression, questionnnaire, design, tables de critère de selection etc) sauf ce dont on est en train de parlé (donc l 'essentiel) je me vois dans l'obligation de continuer l'appli qui est codé en Vb.net ! o_O

        Voila merci d'avance !!
        • Partager sur Facebook
        • Partager sur Twitter
          30 juin 2010 à 23:13:54

          Re,

          Commence par oublié ta première idée, reliés les base c'est possible mais carrément difficile et inutile dans ton cas.
          Il semble que tu veuille avoir une base mysql en local et dans ce cas ta seconde idée et celle qui me parait la plus facile a réaliser (en particulier si tu fais l'appli php sur le serveur local).

          Mais je pense qu'il va y avoir quand un problème au long terme : a quoi va servir le serveur mysql distant si tu fais toute les manips sur le serveur local que tu vas sauvegarder sur le serveur distant, autant mettre en place un système de sauvegarde sur le serveur local et tous rapatriés (ou bien j'ai rien compris aussi :p )

          A toi de me dire ce que tu en penses.
          Hésite pas a repasser si tu as fait ton choix pour le code ou autre ;)
          • Partager sur Facebook
          • Partager sur Twitter
            30 juin 2010 à 23:22:21

            Re,

            langage obliger : VB.Net

            Oui j'y ai pensé ! ;) tout rapatrié aurait était bien pratique, le problème c'est que l'IP bouge :colere2: ! donc je peut pas envoyer les données sur la base locale ( à moins qu'il y est une solution pour retrouver l'ip grâce au domaine DNS de la boite o_O )

            Donc voila, question simplicité j'ai pensé que il valait mieux faire une "base tampon" en ligne, puis aller chercher les données, alimenter la base locale avec ces données, travailler dessus, mettre a jour, et ensuite supprimer les données de la base tampon.

            j'avoue que c'est tordu, mais la boite est un peu tordue aussi ! heureusement le stage reste correct :p

            Si tu pense que c'est faisable je me lance ! reste à trouver comment aller chercher les données distante à partir de l'appli. :euh:
            • Partager sur Facebook
            • Partager sur Twitter
              1 juillet 2010 à 0:03:21

              Bon,

              Soit tu te casse la tete avec ton idée de base tampon ^^
              Soit tu fixe l'adresse ip, en lui attribuant une ip fixe en locale, pas besoin d'une ip externe fixe si tu rapatrie tous et que tu utilise ton serveur qu'en locale, un peu comme un intranet si tu veux...
              Si tu tiens a faire le tampon, un service tel que dyndns peut etre utile, cela permet de lier un nom de domaine a une ip externe dynamique : www.dyndns.fr
              • Partager sur Facebook
              • Partager sur Twitter
                1 juillet 2010 à 9:30:20

                Hmm, Oui ton idée me semble bien meilleur :p

                L'IP du serveur local est fixe, après discussion il semblerais qu'il y est un DNS dynamique (DynDNS) qui fait que l'ont retombe obligatoirement sur l'entreprise grâce a celui-ci.

                Donc si j'ai bien compris, il faut dans mes script PHP du formulaire que je me connecte a la base de mon server local et ainsi rapatrier toutes les données.(Ou j'ai rien compris lol)

                J'utilise ça actuellement

                mysql_connect($bd_nom_serveur, $bd_login, $bd_mot_de_passe);
                mysql_select_db($bd_nom_bd);
                


                comment faire pour "trouver" mon serv local ?
                • Partager sur Facebook
                • Partager sur Twitter
                  1 juillet 2010 à 10:37:55

                  Voila tu as tous compris.

                  Pour te connecter le nom du serveur est a remplacer par la nom en dyndns, ou plus simplement si l'appli est hébergée sur le serveur local par localhost ;)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 juillet 2010 à 16:04:54

                    Pour ceux qui serait intéresser par ce sujet je met la solution en ligne :

                    - Le Dyndns m'a permis de rediriger mes données directement vers l'adresse ip de l'entreprise
                    Exemple : mysql_connect( site_du_zero.dyndns.fr:3306, utilisateur, mot_de_passe)

                    - Après avoir régler le routeur (ip public : 80.***.***.***) pour qu'il redirige les données du reçu du port 3306 vers l'adresse ip (privé : 192.168.1.3) du serveur contenant la base de données, il m'a fallu mettre les droits d'accès à cette base par des entrées extérieures (pas de localhost)

                    Désormais, toutes les données transitent correctement vers ma base locale. (à partir de php, je fais des requête INSERT INTO)
                    Un grand merci à luckyboss sans qui je n'aurais pas réussi !!
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Relié base externe à une base local

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown