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 :

Mise en miroir de 2 bdd sur SQL Server 2008


Sujet :

Réplications SQL Server

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut Mise en miroir de 2 bdd sur SQL Server 2008
    Salut à tous

    J'ai quelques soucis pour mettre en miroir deux bdd sur SQL server 2008 :
    • l'une est sur Windows 2008 server R2
    • l'autre est sur Windows 7 Entreprise


    Je suis bien entendu le tuto de SQLpro à ce sujet , le problème étant que je n'arrive pas à restaurer la bdd du serveur principal (sur Win 2008), sur le serveur cible (Win 7)
    Les liens vers les dossiers ne correspondent pas ensemble, j'ai une erreur 5133

    Msg*5133, Niveau*16, État*1, Ligne*1
    La recherche du fichier "C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\MIRSQL.mdf" dans les répertoires s'est terminée par l'erreur système 3(Le chemin d’accès spécifié est introuvable.).
    Msg*3156, Niveau*16, État*3, Ligne*1
    Impossible de restaurer le fichier 'MIRSQL' en 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\MIRSQL.mdf'. Pour identifier un emplacement valide pour le fichier, faites appel à WITH MOVE.
    Msg*5133, Niveau*16, État*1, Ligne*1
    La recherche du fichier "C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\MIRSQL_log.ldf" dans les répertoires s'est terminée par l'erreur système 3(Le chemin d’accès spécifié est introuvable.).
    Msg*3156, Niveau*16, État*3, Ligne*1
    Impossible de restaurer le fichier 'MIRSQL_log' en 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQLSERVER2008\MSSQL\DATA\MIRSQL_log.ldf'. Pour identifier un emplacement valide pour le fichier, faites appel à WITH MOVE.
    Msg*3119, Niveau*16, État*1, Ligne*1
    Des problèmes ont été identifiés lors de la planification de l'instruction RESTORE. Consultez les messages précédents pour plus de détails.
    Msg*3013, Niveau*16, État*1, Ligne*1
    RESTORE DATABASE s'est terminé anormalement.
    Msg*3118, Niveau*16, État*1, Ligne*2
    La base de données "MIRSQL" n'existe pas. RESTORE peut uniquement créer une base de données lors de la restauration d'une sauvegarde complète ou d'une sauvegarde du fichier primaire.
    Msg*3013, Niveau*16, État*1, Ligne*2
    RESTORE LOG s'est terminé anormalement.
    Et me dit d'utiliser "with move", j'ai tenté mais sans résultats

    Voici le code que j'ai utilisé pour la restauration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    RESTORE DATABASE MIRSQL  
    FROM DISK = N'C:\MIRSQL.bak'
    WITH NORECOVERY 
    GO   
     
    RESTORE LOG MIRSQL  
    FROM DISK = N'C:\MIRSQL_LOG.trn'
    WITH NORECOVERY
    GO
    Pouvez-vous me donner un petit coup de main svp

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    je vais tenter de créer la base avec le même nom sur le serveur cible et de faire la restauration ensuite en passant par l'interface de SQL Server 2008, par contre pour le no recovery

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    ça ne fonctionne pas non plus comme ça

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    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 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Les message d'erreur sont clairs : à la restauration il ne peut pas replacer les fichiers de la base là ou ils étaient originellement.
    Vous devez donc faire un RESTORE avec l'option MOVE.

    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/ * * * * *

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    J'ai réussi avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RESTORE DATABASE MIRSQL  
    FROM DISK = N'C:\MIRSQL.bak'
    WITH NORECOVERY,
    MOVE 'MIRSQL' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL.MDF',
    MOVE 'MIRSQL_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL_Log.lDF';
    GO
    en fait, ma syntaxe était incorrecte pour l'utilisation de 'MOVE'

    je continue ma mise en miroir
    merci pour l'aide

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    la base que j'ai restauré sur le serveur cible se met en "restauration" et est inaccessible

    je suis au moment de lier les bases pour le miroir avec "SET PARTNER"
    le serveur cible arrive à contacter le serveur source mais pas l'inverse, pourtant ça ping bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Msg*1418, Niveau*16, État*1, Ligne*1
    L'adresse réseau du serveur "TCP://win7:7022" est impossible à atteindre ou elle n'existe pas. Vérifiez le nom de l'adresse réseau et assurez-vous que les ports des points de terminaison locaux et distants sont opérationnels.
    Quand je fait un netstat -na sur les deux serveurs, je vois bien que le port 7022 est en écoute

  7. #7
    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,

    Avez vous vérifiez l'état du point de terminaison sur votre serveur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT 
        name, 
        protocol_desc, 
        type_desc, 
        state_desc, 
        port, 
        ip_address 
    FROM sys.tcp_endpoints;
    ++

  8. #8
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    Bonjour

    Sur les deux serveurs, c'est bon sur le port 7022

    ça ne fonctionne toujours pas
    Images attachées Images attachées  

  9. #9
    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
    Quel type d'authentification pour vos endpoints ?

    Est ce que le compte de connexion sur ces endpoints a le droit d'y accéder ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    GRANT CONNECT ON ENDPOINT::<endpointName> TO <compteconnexion>
    GO
    Pas de problème de firewall non plus ?

    ++

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    merci, ta commande à apparemment bien fonctionnée

    Par contre, ça serait la base distante qui ne serait pas totalement restaurée, mais ça fait déjà quelques temps que j'ai lancé la restauration

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Msg*1412, Niveau*16, État*0, Ligne*1
    La copie distante de la base de données "MIRSQL" n'a pas été restaurée par progression jusqu'à une limite dans le temps qui est incluse dans la copie locale du fichier journal de la base de données
    firewall désactivé sur les deux serveurs, je suis sur un réseau local

  11. #11
    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
    Visiblement il vous manque une restauration d'une sauvegarde qui concerne le journal des transactions de votre base de données

    ++

  12. #12
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    J'ai rechargé le journal à l'aide de l'outil "restaurer" donc ma base n'est plus en restauration

    par contre, maintenant, j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Msg*1416, Niveau*16, État*31, Ligne*1
    La base de données "MIRSQL" n'est pas configurée pour la mise en miroir de base de données.
    J'ai du mal avec ce mirroring
    merci pour votre aide

  13. #13
    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
    Pour le mirroring il faut restaurer votre sauvegarde du journal tout en restant en mode NORECOVERY. C'est la raison pour laquelle vous avez ce message d'erreur.

    Dans votre cas il faut à nouveau restaurer la sauvegarde FULL en NORECOVERY et la sauvegarde du journal en NORECOVERY.

    Vous pourrez ensuite initier votre session en mirroring

    ++

  14. #14
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    J'utilise cette syntaxe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RESTORE DATABASE MIRSQL  
    FROM DISK = N'C:\MIRSQL.bak'
    WITH NORECOVERY,
    MOVE 'MIRSQL' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL.MDF';
    GO
    RESTORE LOG MIRSQL
    FROM DISK = N'C:\MIRSQL_LOG.trn'   
    WITH NORECOVERY,
    MOVE 'MIRSQL_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL_Log.LDF';
    GO
    il m'indique toujours un problème sur les logs mais, si j'utilise cette syntaxe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RESTORE DATABASE MIRSQL  
    FROM DISK = N'C:\MIRSQL.bak'
    WITH NORECOVERY,
    MOVE 'MIRSQL' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL.MDF',
    MOVE 'MIRSQL_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL_Log.lDF';
    GO
    pas de problème mais la base de donnée indique toujours "restauration"

  15. #15
    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
    Vous n'avez pas besoin de restaurer les logs en spécifiant le path ... Ceci se fait directement lors la restauration du backup FULL.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RESTORE DATABASE MIRSQL  
    FROM DISK = N'C:\MIRSQL.bak'
    WITH NORECOVERY,
    MOVE 'MIRSQL' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL.MDF',
    MOVE 'MIRSQL_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008W7\MSSQL\DATA\MIRSQL_Log.LDF';
    GO
    RESTORE LOG MIRSQL
    FROM DISK = N'C:\MIRSQL_LOG.trn'   
    WITH NORECOVERY
    GO
    Initiez ensuite votre session en miroir

    ++

  16. #16
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 109
    Points : 49
    Points
    49
    Par défaut
    ma base est en miroir synchronisé
    un énorme merci

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/05/2015, 14h39
  2. Réponses: 3
    Dernier message: 17/05/2010, 11h50
  3. Réponses: 0
    Dernier message: 30/09/2009, 18h13
  4. Réponses: 0
    Dernier message: 30/09/2009, 18h13
  5. Serveur lié sur sql server 2008
    Par bruno.durand dans le forum Développement
    Réponses: 2
    Dernier message: 11/03/2009, 13h49

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