IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

synchroniser deux base avec un trigger ?


Sujet :

Langage SQL

  1. #1
    Membre actif Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 245
    Points
    245
    Par défaut synchroniser deux base avec un trigger ?
    Bonjour

    Voila j'ai un projet a étudier pour mon job et j’aurais une petite question a vous poser.

    Donc en gros j'ai un base SQL server et une autre postgresql

    Je doit crée un site web pour récupérer des donnée dans la base sql server.
    Par sécurité et aussi par ce que la base et très utiliser par des programme il et interdit de faire des requête directement sur la base sql server pour ne pas la surcharger.
    Donc voila le but de ma nouvelle base postgresql j’aurais voulus utiliser un trigger sur la base sql server qui dupliquerai les requêtes sur ma base postgresql on gros sa me permettrez de synchroniser les base et que mon site utilise sa propre base.
    Donc je suis tomber sur plusieurs tuto sur les trigger mais je n'est toujours pas compris si je pouvais les utiliser pour déclencher un requête sur une base extérieur.
    Donc est ce faisable ??

    Merci d'avance pour vos reponse.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Je ne pense pas que ce soit une bonne solution sans même se pencher sur la faisabilité techniquement (sqlserver > trigger > postgres).

    Pour ce qui est de la sécurité, vous pouvez très bien utiliser les mécanismes fournis par SQL Server avec des utilisateurs qui ont des droits restreints. C'est justement fait pour ça donc faire un cloisement physique en faisant une 2ème base avec un SGBD différent est à mon sens une mauvaise et complexe solution.

    Pour ce qui est des performances, vous avez plusieurs solutions :

    - augmenter les performances de votre serveur (RAM, disques en RAID, disques SSD, ...)
    - utiliser un autre serveur répliqué (toujours en SQL Server) dédié à vos besoins de lecture. La réplication est faîte pour ça donc plus simple et robuste qu'une solution maison basée sur des triggers.

  3. #3
    Membre actif Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 245
    Points
    245
    Par défaut
    merci pour la reponse rapide
    mais la partie sql server n'appartient pas a ma boite et si j'aurais eu le choix
    j'aurais tout simplement utiliser ta premier solution.

    - augmenter les performances de votre serveur (RAM, disques en RAID, disques SSD, ...)

    je verais quand meme si c'est n'egociable.

    sinon je vait me pencher sur ta deuxieme solution

    -utiliser un autre serveur répliqué (sql server)

    et sinon dans le pire des cas est ce faisable un trigger meme si ce n'est pas tres propre?

  4. #4
    Membre actif Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 245
    Points
    245
    Par défaut
    je vient de penssé que la replication ne serer pas possible car mon server tourne
    sous ubuntu (linux).
    donc il ne serat pas possible d'installer du sql server sur la distribution donc la meilleur solution et de négocier de taper directement dans la base sql server.
    ou si la replication et possible avec differente SGBD sa serait le top.

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Vous souhaitez utiliser les triggers pour faire de la réplication. Vous allez donc devoir déclarer autant de triggers que vous aurez de tables et ce pour chaque ordre INSERT/UPDATE/DELETE. C'est lourd, source d'erreurs et péniblement maintenable.

    De plus vous devez avoir la main sur cette base SQL Server pour y développer les triggers donc le fait qu'elle ne soit pas à votre boîte revient au même problème.

    La réplication unidirectionnelle est un mécanisme exactement fait pour reporter toutes les modifications d'une base vers une (ou plusieurs) autres bases (du même moteur). Il serait fou de faire la même chose avec des triggers même si c'est techniquement faisable.

  6. #6
    Membre actif Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Points : 245
    Points
    245
    Par défaut
    donc c'est claire les trigger je vais abandonner

    je vient de trouver ce tuto qui parle de repliqué du sql server avec du postgresql (si j'ai bien compris).

    http://people.planetpostgresql.org/m...ostgreSQL.html

    je vais voir si c'est réalisable .

    et sinon dans le pire des cas je vais negocié par aller dirrectemment sur sql server.

    merci encore.

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Citation Envoyé par buse974 Voir le message
    et sinon dans le pire des cas je vais negocié par aller dirrectemment sur sql server.

    merci encore.
    Je vous le conseille même si je sais qu'il est souvent difficile de demander des modifications sur un système sur lequel on n'est pas maître. C'est aussi souvent la meilleure solution pour ne pas aller vers des solutions hétérogènes là où il n'y en a pas besoin.

    Citation Envoyé par buse974 Voir le message
    donc c'est claire les trigger je vais abandonner

    je vient de trouver ce tuto qui parle de repliqué du sql server avec du postgresql (si j'ai bien compris).

    http://people.planetpostgresql.org/m...ostgreSQL.html

    je vais voir si c'est réalisable .
    Je ne doute pas que ce soit possible de répliquer du SQL Server sur Postgres, cependant, je suis dubitatif quant à l'intérêt de la solution ici aussi. Il y a forcément une couche supplémentaire source de problèmes éventuels.

    SQL Server existe en version Express qui est gratuite. Elle peut être utilisée pour la réplication en étant Slave seulement ce qui suffit pour vous puisque vous avez une base SQL Server en Master. Je ne saurais que trop vous conseiller de rester avec le même SGBD pour faire la réplication : plus simple, plus robuste, plus rapide.

    Petit article ici : http://fromelard.free.fr/Scripts/SQL...ionExpress.pdf

Discussions similaires

  1. Synchroniser deux bases ACCES identique
    Par tryonyco dans le forum C++Builder
    Réponses: 3
    Dernier message: 11/05/2009, 12h14
  2. Synchroniser deux bases de données
    Par whitespirit dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 27/11/2008, 14h01
  3. Synchronisation deux base de données
    Par musmus dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 11/07/2008, 23h16
  4. Synchronisation deux Bases Mysql
    Par eric_89 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 14/12/2006, 15h57
  5. Comment synchroniser deux bases de données
    Par apoingsfermes dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 15/11/2006, 22h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo