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 :

Stratégie de sauvegade de bases en réplication


Sujet :

Réplications SQL Server

  1. #1
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut Stratégie de sauvegade de bases en réplication
    Bonjour,

    J'ai "hérité" d'un serveur SQL Server 2000 avec queques bases qui sont en réplication transactionnelle. Pour l'instant, les bases sont sauvegardées "à froid" . Le motuer SQL est arrêté et les fichiers .mdf et ldf de toutes les bases sont copiés avec un cp. Nous n'avons donc pas de soucis de cohérence entre les bases et leurs "subscribers" ... Je voudrais néanmoins faire ces sauvegardes "à chaud" afin de ne pas avoir d'arrêt de la base, car nous devons lancer de plus en plus de choses dessus et ne pouvons plus nous permettre un arrêt. Y a-t'il des précautions à prendre ? Y a-t'il un moyen de mettre "en pause" la réplication ?

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    Il n'est en rien nécessaire de mettre la réplication en pause. Les backup SQL Server vont fonctionner sans problème, du backup complet au backup de log de transaction.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  3. #3
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut
    Je n'aurai pas de problèmes en cas de restore ? Si le backup de la base cible est à un état plus avancé que celui de la base d'origine ?
    Il va falloir que je refasse une synchro (un snapshot) avant de relancer la repli, non ?

  4. #4
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Il y a des petites subtilités. Notamment une option "Sync With Backup" de la publication. Petite documentation ici :
    http://msdn.microsoft.com/library/de...ackup_4cku.asp

    Je ne suis pas familier avec cette option, elle peut potentiellement introduire un temps de latence pour la réplication, à voir. L'autre solution est de faire un restore "point-in-time", comme indiqué dans cette doc.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  5. #5
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut
    Cool, merci pour ton document .... Bon, ben j'ai de la lecture ...

  6. #6
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut
    Je continue dans mon processus de sauvegarde/restaure des bases en repli.
    J'ai mis en place une procédure de sauvegarde avec :
    1 sauvegarde complète tous les jours à minuit + une sauvegarde des logs toutes les heures.
    Je veux maintenant tester la restauration. La réplication est dans les deux sens (La base abonnée doit aussi mettre à jour des tables dans la base editrice). Donc je vais procéder à une restore "point-in-time". Ma question est:
    Je suppose que pendant que je restaure les bases concernées, la réplication ne doit pas tourner. Suffit-il d'arrêter l'agent SQLSERVER pour s'assurer que la répli ne tourne pas ?

  7. #7
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 716
    Points : 52 380
    Points
    52 380
    Billets dans le blog
    4
    Par défaut
    Une restauration impose l'usage exclusif de la base de données pendant tout le temps de la restauration. Autrement dit, pendant cette phase il ne peut y avoir ni lecture ni mise à jour des données de quelques manières que ce soit (accès direct, réplication ou autre).

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  8. #8
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut
    Merci SQLpro pour ton explication, mais je me préoccupe surtout de celles qui ne sont pas en cours de restauration.
    En fait, pour être plus explicite, j'ai plusieurs abonnés à la base éditrice et qui eux aussi mettent à jour des tables dans la base principale. Faut-il désactiver la répli tout le temps où je fais la restauration des différentes bases ? Je pense en avoir pour au moins une demi heure de restore .... Pendant ce temps-là j'ai peur que la restore tourne.

  9. #9
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Je n'ai malheureusement pas d'expérience de ce contexte.

    Il y a qq infos ici :
    http://www.microsoft.com/technet/pro...est.mspx#ELSAG

    Admettons que le bon sens s'applique. Mettons-nous dans une situation de réplication transactionnelle :
    si tu restaure une base subscriber, tu la restaures jusqu'au point de dernière réplication. Le publisher va garder les transactions jusqu'à ce qu'il puisse les appliquer sur le subscriber. Sinon, il faut sans doute regénérer un snapshot.

    Si tu restaures un publisher, et qu'il est up-to-date, il va normalement recommencer à répliquer comme si de rien n'était. S'il n'est pas à jour, tu auras peut-être envie de récupérer des données plus fraîches d'un subscriber, et refaire un snapshot pour repartir à zéro.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  10. #10
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    344
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 344
    Points : 324
    Points
    324
    Par défaut
    Merci pour le lien rudib, très instructif ... Il y a notemment cette partie:

    Generally it is considered a good practice to let the replication agents finish the current replication workload, so that Publisher and all Subscribers are in sync. Once the Subscribers are in sync, perform the following steps:

    1.
    Stop the distribution/merge agent(s).

    2.
    Back up the Publisher, Distributor, Subscriber(s), and other databases.
    Comme la sauvegarde est scriptée, comment arrêter l'agent de distribution ? Par arrêt de l'agent Sql Server ?

  11. #11
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 716
    Points : 52 380
    Points
    52 380
    Billets dans le blog
    4
    Par défaut
    Le fait d'arrêter le distributeur ne posera pas de problème. L'inconvénient c'est que si vous avez une réplication à 3 serveur, les deux autres ne répliquerons pas. Alors qu'en laissant tout fonctionner, celui qui sera restauré sera le seul à être pénalisé avec un gros lot de mise à jour à faire lors de la mise en ligne de la base.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. stratégie de backup pour base mirrorée
    Par bribou dans le forum Administration
    Réponses: 5
    Dernier message: 23/03/2010, 17h24
  2. [Stratégie] connexion a la base avec JDialog thread progressbar
    Par jeffciara dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 25/02/2008, 03h35
  3. Stratégie de sauvegade de bases en réplication
    Par usf70 dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 13/06/2006, 17h21
  4. [Stratégie][XML] Base de données
    Par Rampa dans le forum Format d'échange (XML, JSON...)
    Réponses: 15
    Dernier message: 12/07/2005, 16h45
  5. Réplication de base Client vers Serveur
    Par lil_jam63 dans le forum Administration
    Réponses: 3
    Dernier message: 18/06/2005, 22h57

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