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 :

[SQL Server 2005] Redondance Serveur Principal, Secours


Sujet :

Réplications SQL Server

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 21
    Points : 18
    Points
    18
    Par défaut [SQL Server 2005] Redondance Serveur Principal, Secours
    Je poste ici car pour mon stage je dois réaliser une mise en redondance d'une base de données utilisé par une supervision. Je suis novice dans ce domaine.
    Niveau documentation je lis beaucoup sur ce site, sur celui de Microsoft et un bouquin sur l'administration d'une BDD SQL Server 2005.

    Si j'ai bien compris il y a plusieurs moyens :
    - la réplication
    - la mise en miroir
    - l'envoie des journaux de transaction.

    Nous devons être capables de basculer du serveur secours au principal donc j’ai éliminé la réplication qui ne permet pas ça.
    Et la j’entre dans la phase test des deux autres méthodes. J’ai commencé par l’envoie des journaux de transaction.

    Le problème que je rencontre est la restauration de la sauvegarde complète de ma base, voici les requêtes SQL que j’envoie.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    -- SAUVEGARDE COMPLETE DE LA BDD CODEART
    USE master
    ALTER DATABASE CODEART SET RECOVERY FULL
    GO
     
    BACKUP DATABASE CODEART
    	TO DISK = 'E:\CODEART.bak'
    	WITH FORMAT
    GO
     
    BACKUP LOG CODEART TO DISK = 'E:\CODEART_LOG.bak'
    GO
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    --RESTAURATION BDD
    USE master
    GO
     
    RESTORE DATABASE CODEART
    	FROM DISK = 'E:\CODEART.bak'
    	WITH MOVE 'CODEART' TO 'C:\Test\CODEART.MDF'
    GO
     
    RESTORE LOG CODEART
    	FROM DISK = 'E:\CODEART_LOG.bak'
    	WITH MOVE 'CODEART_LOG' TO 'C:\Test\CODEART.LDF'
    GO
    Il me met une erreur comme quoi il ne trouve pas le bon dossier et qu'il faut utiliser move to.
    Merci d'avance de votre aide et/ou remarques.

  2. #2
    Membre confirmé Avatar de agemis31
    Profil pro
    DBA
    Inscrit en
    Octobre 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : DBA

    Informations forums :
    Inscription : Octobre 2007
    Messages : 399
    Points : 478
    Points
    478
    Par défaut Log shipping
    Bonjour,

    Le log shipping me semble bien adapté à votre besoin.

    Votre syntaxe de restauration est incorrecte, ce sont les fichiers physiques qu'on déplace avec MOVE.

    Vous avez un exemple ici

    @+

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 21
    Points : 18
    Points
    18
    Par défaut
    Tout d'abord merci de votre réponse.

    Je viens de comprendre mon erreur j'aurai du taper
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    --RESTAURATION BDD
    USE master
    GO
     
    RESTORE DATABASE CODEART
    	FROM DISK = 'E:\CODEART.bak' WITH NORECOVERY
    GO
     
    RESTORE LOG CODEART
    	FROM DISK = 'E:\CODEART_LOG.bak' WITH NORECOVERY
    GO
    Je rajoute la fonction norecovery pour que ma BDD du serveur de secours soit en lecture seule tout le temps ou le serveur principal fonctionne.
    Le probleme que je rencontre c'est que sur le serveur principal la BDD est stocké sur D:\Codeart\codeart.mdf et sur le secours ce serait E:\Codeart\codeart.mdf comment faire?

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Bonsoir,

    Il faut ajouter l'option WITH MOVE dans votre script de restauration.

    J'attire votre attention sur le choix de votre techno pour ce que vous voulez faire. Si le but est de pouvoir basculer de façon automatique et rapidement le mirroring est plus adapté que le log shipping.

    La bascule avec le log shipping se fait de façon manuelle alors que le mirroring permet un basculement automatique (avec un serveur témoin).

    De plus le mirroring garde le cache des plans d'éxecution entre le serveur principal et le serveur miroir alors que le log shipping ne le permet pas.

    ++

  5. #5
    Membre confirmé Avatar de agemis31
    Profil pro
    DBA
    Inscrit en
    Octobre 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : DBA

    Informations forums :
    Inscription : Octobre 2007
    Messages : 399
    Points : 478
    Points
    478
    Par défaut Merci
    Merci mikedavem,

    J'ignorais ces avantages du mirroring sur le log shipping.

    @+

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 21
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    J'ai lu que le logshipping etait le mirroring du pauvre a cause de ces differences. Je met en place les deux solutions pour faire une analyse comparative.
    Je vais tester avec l'option with move.

    Merci de tout vos conseils.

    EDIT: la restauration a fonction mais ma base de données CODEART reste afficher en Restoring...

  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 761
    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 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    Seule le mirroring permet d'avoir une base synchrone, c'est à dire sans aucune perte de transaction, alors que c'est impossible par nature dans le log shipping.

    Lisez l'étude que j'ai faite sur les solutions de haute dispo dans mon site web.

    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 à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2009
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2009
    Messages : 21
    Points : 18
    Points
    18
    Par défaut
    Bonjour SQLPro j'avais déjà lu votre article et c'est grâce à lui que j'ai éliminé la solution de réplication.

    Le logshipping ne permet pas un basculement automatique et entraîne une perte de données plus ou moins élevés suivant le temps de sauvegarde.
    Quand au mirroring il faut un poste témoin en plus pour le basculement automatique mais n'entraîne pas de perte de données.

    Je résume bien ?

    Dans tous les cas je dois faire une restauration complète de ma base pour pouvoir paramétrer le mirroring mais ma base s'affiche en restoring et y reste.

    EDIT: J’ai trouvé pourquoi il me l'affiche en restoring c'est avec l'option norecovery elle est ni en lecture ni en ecriture.
    En standby en lecture uniquement et en recovery en lecture ecriture.

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

Discussions similaires

  1. [SQL Server 2005] Dépendances serveurs liés
    Par mad_martigan dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 08/09/2008, 21h53
  2. Sql server 2005 sur serveur 64 bits
    Par marco01 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/08/2008, 15h36
  3. [SQL server 2005 express] liste des erreurs SQL serveur 2005
    Par critok dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/05/2006, 19h17
  4. Inscription d'un serveur SQL server 2005 Express
    Par Opo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/04/2006, 13h46
  5. Réponses: 2
    Dernier message: 13/02/2006, 10h53

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