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

Réplications SQL Server Discussion :

erreur Replication transactionnelle


Sujet :

Réplications SQL Server

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    433
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 433
    Par défaut erreur Replication transactionnelle
    Bonjour,

    J’ai 2BD qui sont installé sur 2 serveurs #, ils ont la même architecture (les même table, relation diagrammes)
    Je veux réaliser 2 réplications transactionnelles:
    sens1=> BD1(table1,table2) vers BD2(table1,table2)
    sens2=> BD2(table3,table4) vers BD1(table3,table4)

    Le problème: lorsque je veux répliquer une ou 2 table de la BD1=>BD2
    Le diagramme que j'avais sur BD2 est écrasé autrement dit l'ensemble des relation sont réinitialisés.
    j'ai trouvé une explication à la chose:
    lorsque je coche (oui initialiser schéma et les données ) dans l'assistant d'extraction d'abonnement le probleme est signaler mais la replication ça passe mais pas comme il le faut,
    sinon cad lorsque je coche (Non l'abonné dispose déja du schéma et du données ) un autre message est signalé "Impossible de trouver la procédure stockée 'sp_MSupd_table1'."est la replication est bloqué,

    des idées???
    merci d'avance

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Par défaut
    bjr,

    dans le 2eme cas (activation du flux de répli sans init par snapshot), il faut tu créés toi-même les procs de màj :

    Exécute dans un analyseury de query :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    use <base>
    go
    exec sp_scriptpublicationcustomprocs [ @publication = ] 'publication_name'
    go
    ensuite tu executes le résultat (qui est un ensemble de create procedures)
    sur l'abonné. A ce moment-là tu retrouves toutes les procs utilisées par l'agent de distribution.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    433
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 433
    Par défaut
    lorsque je coche (Non l'abonné dispose déja du schéma et du données ) un autre message est signalé "Impossible de trouver la procédure stockée 'sp_MSupd_table1'."est la replication est bloqué,

    tu as ecris "il faut tu créés toi-même les procs de màj :",tu veux dire tte les procedures stocké(d'abord tu peux me dire ou exactement est ce que c'est au niveau du distribiteur? ou bien l'abonné?)
    tu peux me donner un modele si c possible?

    merci

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Par défaut
    Avant de créér ton abonnement sur la pub,
    tu te positionnes sur la base publiée et tu lances la proc que je t'ai cité.
    Le résultat de cette procédure est le code de toutes les procédures de gestion de màj sur les tables de l'abonné. Pour chaque table publiée, tu trouveras
    3 procs sp_MSins_table, sp_MSupd_table & sp_MSdel_table.
    Donc il faut copier coller ce résultat et créér les procs dans la base abonnée.
    Une fois ceci fait, tu peux créér ton abonnement (avec l'option : abonné a déjà les données), ainsi à l'application du snapshot, le distributeur exécutera les procédures installées.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    433
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 433
    Par défaut
    "Avant de créér ton abonnement sur la pub,
    tu te positionnes sur la base publiée et tu lances la proc que je t'ai cité."

    j'ai essayé cette ligne au niveau de la base publié
    "EXEC sp_scriptpublicationcustomprocs [@publication] = 'pub1' "
    un message d'erreur est signalé come quoi il est impossible de trouver cette procedure(sp_scriptpublicationcustomprocs)
    des idées????

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    433
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 433
    Par défaut
    oui c bon j'ai arrivé à executer la procedure, c éte un probleme de service pack
    je passerai à la creation des procedure
    pas mal non

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    433
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 433
    Par défaut
    je tiens à te remercier pour tes reponses

    si j'ai bien compris "Donc il faut copier coller ce résultat et créér les procs dans la base abonnée."
    je dois coller ce résultat au niveau de bd de l'abonné?
    aprés je dois creer ttes les procedure (tjrs au niveau de l'abonnée)?


    Merci d'avance

  8. #8
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Par défaut
    si j'ai bien compris "Donc il faut copier coller ce résultat et créér les procs dans la base abonnée."
    le résultat est le code de l'ensemble des procs exécutant les mises à jour sur chaque table de l'abonné.

    je dois coller ce résultat au niveau de bd de l'abonné?
    oui, pour être précis : coller dans une fenetre d'analyseur de requêtes ... et exécuter, ce qui aura pour effet de créer les procédures nécessaires.

    Ensuite tu peux t'abonner.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/10/2009, 09h30
  2. Erreur Replication : ..n'a pu être propagé vers l'abonné.
    Par groovyroe dans le forum Réplications
    Réponses: 1
    Dernier message: 14/11/2007, 21h26
  3. Erreur Replication : ..n'a pu être propagé vers l'abonné.
    Par groovyroe dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 14/11/2007, 21h26
  4. erreur Replication transactionnelle
    Par zalalus dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 11/07/2007, 12h58
  5. Replication transactionnelle Mise a jour
    Par boutts dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/05/2007, 11h28

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