Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Administration
Administration Forum d'entraide sur l'administration du dataserver, via SSM ou ligne de commande, les tables système, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/10/2011, 11h51   #1
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Par défaut Stratégie de sauvegarde sur Mirroring SQL 2008

Bonjour à tous,

Je travail actuellement sur un Mirroring SQL en mode High Protection (Synchronisé, sans témoin), cela fonctionne parfaitement.

Cependant il me semble que lors d'une sauvegarde SQL les fichiers transaction log sont supprimés cela risque d'impacter ma synchronisation (sachant que la send queue est stockée dedans) ?

Pouvez-vous m'indiquer quel est la stratégie de sauvegarde à appliquer dans ce type de configuration ?

Merci d'avance
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 12h34   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
Aucune importance. Le mirroring n'ayant rien à voir avec le log shipping puisque les transactions sont capturée en mémoire et non dans le JT. Mais en cas de désynchronisation, le JT fera rétention jusqu'à un nouveau point de synchro.

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 12h42   #3
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Merci pour ta réponse,

Pour être plus claire je vais décrire le contexte de mon test.

Mon serveur principale et mirror sont synchronisés.

1 - Je coupe le serveur mirror

2 - Je modifie une data sur le serveur

3 - Je fais un backup de mon Transaction Log

4 - Je relance mon serveur mirror

Résultat :

Ma donnée n'est pas répliqué sur le serveur mirror
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h02   #4
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 724
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 724
Points : 6 848
Points : 6 848
Dans une session en mirroring si vous coupez votre session en miroir la sauvegarde du log ne videra pas le journal. Le seul moyen est de casser la session. Une fois votre session restaurée les transactions accumulés depuis la coupure dans le journal seront joués sur le miroir.

Si vous n'avez pas votre donnée vérifiez que l'état de votre session qui doit être SYNCHRONIZED.

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h12   #5
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Je confirme que ma session est bien synchronisé, j'ai un petit point d'exclamation à côté de la donnée modifié il affiche le message suivant :

"The cell has changed.
The change has not been commited to the database
The original data is toto"
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h22   #6
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 724
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 724
Points : 6 848
Points : 6 848
On peut savoir comme vous lisez vos données depuis votre miroir ?

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h34   #7
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Je lance une bascule sur le serveur Mirror.
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h54   #8
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 724
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 724
Points : 6 848
Points : 6 848
Et en effectuant votre requête directement depuis une fenêtre de requête ?

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h03   #9
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
J'utilise SQL Management Studio > Clique-droit sur ma table > Edit Top 200 Rows

Voilà merci
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h07   #10
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 724
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 724
Points : 6 848
Points : 6 848
Oui mais que donne son équivalent sous forme de requête dans une fenêtre de requête dans SQL Server Management Studio ?

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h16   #11
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
La même chose la même ligne est différente sur les 2 bases
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h49   #12
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Je me pause aussi la question suivante :

Dans le cas ou un backup de mon Transaction Log est réalisé juste après une écriture ? On se retrouve dans le même schéma mon écriture n'est pas répliquer sur le serveur mirror ?

Merci d'avance
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 16h04   #13
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Pour infos :
Je viens de refaire le test et cette fois la ligne est similaire sur le principale et le mirror mais la donnée que j'ai modifiée auparavant n'a pas été prise en compte. Par conséquent j'ai une perte à ce moment là...
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 17h26   #14
Modérateur
 
Homme
Administrateur de base de données
Inscription : août 2007
Messages : 1 159
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Belgique

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : août 2007
Messages : 1 159
Points : 1 611
Points : 1 611
Citation:
"The cell has changed.
The change has not been commited to the database
The original data is toto"
Ca veut dire que la cellule du GUI de SSMS a ete modifiee.
Par contre la modification n'a pas ete faite dans la base de donnees.
Ce qui veut aussi dire pas envoyee du cote du mirroir.

Dans cette situation, vous n'avez pas modifie de donnee, ce qui est visible sur votre mirroir en tant que "ancienne donnee", vu que c'est aussi votre cas de l'autre cote.
Ptit_Dje est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 18h07   #15
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Donc si j'ai bien compris :

- Une fois le serveur Mirror déconnecté les écritures réalisées sur la database en tout cas via la GUI ne sont pas écrite sur la base ?

- Dans tout les cas les écritures réalisées durant cette période ne seront pas enregistrées.

?
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 18h48   #16
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 724
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 724
Points : 6 848
Points : 6 848
Quand le miroir est déconnecté il n'y a effectivement pas de transaction rejoué sur celui-ci. Cependant celles-ci sont enregistrés dans le journal des transactions sur le serveur principal.

Ce qui est étonnant ce qu'une fois votre session miroir restituée (enfin je suppose) les transactions ne sont pas rejoués sur le miroir. Si je reprends votre procédure de test :

Citation:
1 - Je coupe le serveur mirror

2 - Je modifie une data sur le serveur

3 - Je fais un backup de mon Transaction Log

4 - Je relance mon serveur mirror
Quand vous dites relancer votre serveur miroir vous faites quoi exactement ? Vous basculez directement ou vous restaurer votre session en miroir avant de basculer ?

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 21h59   #17
Modérateur
 
Homme
Administrateur de base de données
Inscription : août 2007
Messages : 1 159
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Belgique

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : août 2007
Messages : 1 159
Points : 1 611
Points : 1 611
Citation:
Envoyé par Guigui_91090 Voir le message
- Une fois le serveur Mirror déconnecté les écritures réalisées sur la database en tout cas via la GUI ne sont pas écrite sur la base ?
?
Qu'entendez vous par déconnecté ? En pause ? Ou la session carrément cassée ?

Si vous entendez en pause, vos écritures dans la database seront répliquées au moment ou vous sortirez le mirroir de la pause.

Par contre, quand vous entendez les écritures réalisées sur la base via le GUI ne sont pas écrites, c'est faux, elles peuvent l'être.
Il faut par contre qu'elles le soient vraiment.

Dans votre cas, je prendrais l'image suivante:
- Prenez un fichier texte que vous ouvrez avec notepad
- Editez le (changement du fichier au niveau du GUI)
- Quittez sans sauvegarder (ne pas commiter les données)

Même résultat que changer des données dans le GUI de SQL Server et ne pas les commiter.
Donc pas de réplication sur le mirroir car rien à été changé.
Ce serait pareil avec un DFS pour le fichier.
Ptit_Dje est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/10/2011, 11h35   #18
Invité de passage
 
Inscription : mai 2010
Messages : 17
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 17
Points : 2
Points : 2
Bonjour,

Eh bien je fais des test depuis ce matin je n'arrive pas à reproduire le même problème que j'ai rencontré hier. Le problème viendrait plutôt de GUI ma requête n'a pas du être commité comme vous me l'avez suggéré...

Merci pour votre aide
Guigui_91090 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h41.


 
 
 
 
Partenaires

Hébergement Web