<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>David Barbarin &#187; Mirroring;SQL Server;Haute disponibilité</title>
	<atom:link href="https://blog.developpez.com/mikedavem/ptag/mirroringsql-serverhaute-disponibilite/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/mikedavem</link>
	<description>MVP DataPlatform - MCM SQL Server</description>
	<lastBuildDate>Thu, 09 Sep 2021 21:19:50 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>SQL Server mirroring : Ajout d&#8217;un fichier de bases de donn&#233;es et impact</title>
		<link>https://blog.developpez.com/mikedavem/p11630/sql-server-2005/sql-server-mirroring-ajout-dun-fichier-de-bases-de-donnes-et-impact</link>
		<comments>https://blog.developpez.com/mikedavem/p11630/sql-server-2005/sql-server-mirroring-ajout-dun-fichier-de-bases-de-donnes-et-impact#comments</comments>
		<pubDate>Thu, 03 Jan 2013 20:47:01 +0000</pubDate>
		<dc:creator><![CDATA[mikedavem]]></dc:creator>
				<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[SQL Server 2008]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[Mirroring;SQL Server;Haute disponibilité]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/mikedavem/?p=330</guid>
		<description><![CDATA[Lors d&#8217;une prestation chez un client, celui-ci m&#8217;a demandé s&#8217;il était possible d&#8217;ajouter un fichier à une base de données concernée par une session en miroir. La réponse est évidement oui mais cette opération nécessite quelques actions supplémentaires pour qu&#8217;elle &#8230; <a href="https://blog.developpez.com/mikedavem/p11630/sql-server-2005/sql-server-mirroring-ajout-dun-fichier-de-bases-de-donnes-et-impact">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Lors d&rsquo;une prestation chez un client, celui-ci m&rsquo;a demandé s&rsquo;il était possible d&rsquo;ajouter un fichier à une base de données concernée par une session en miroir. La réponse est évidement oui mais cette opération nécessite quelques actions supplémentaires pour qu&rsquo;elle soit également validée sur le serveur en miroir. En effet l&rsquo;ajout d&rsquo;un fichier de bases de données va suspendre la session en miroir comme on peut le voir sur l&rsquo;image ci-dessous :</p>
<p><a href="http://blog.developpez.com/mikedavem/files/2013/01/image1.png"><img style="border-top: 0px;border-right: 0px;border-bottom: 0px;padding-top: 0px;padding-left: 0px;border-left: 0px;padding-right: 0px" border="0" alt="image" src="http://blog.developpez.com/mikedavem/files/2013/01/image_thumb1.png" width="523" height="50" /></a></p>
<p><a href="http://blog.developpez.com/mikedavem/files/2013/01/image2.png"><img style="border-top: 0px;border-right: 0px;border-bottom: 0px;padding-top: 0px;padding-left: 0px;border-left: 0px;padding-right: 0px" border="0" alt="image" src="http://blog.developpez.com/mikedavem/files/2013/01/image_thumb2.png" width="529" height="48" /></a></p>
<p>&#160;</p>
<p>Le fait de reprendre la session ne changera rien. Si on jette un coup d&rsquo;œil dans le journal des évènements SQL Server sur l&rsquo;instance en miroir on peut voir le message suivant :</p>
<p><a href="http://blog.developpez.com/mikedavem/files/2013/01/image3.png"><img style="border-top: 0px;border-right: 0px;border-bottom: 0px;padding-top: 0px;padding-left: 0px;border-left: 0px;padding-right: 0px" border="0" alt="image" src="http://blog.developpez.com/mikedavem/files/2013/01/image_thumb3.png" width="812" height="169" /></a></p>
<p>&#160;</p>
<p>La modification du schéma de bases de données n&rsquo;a pas été répercuté automatiquement sur l&rsquo;instance en miroir et par conséquence la session en miroir est suspendue. La question évidente ici est comment répercuter la modification de schéma de base sur l&rsquo;instance en miroir ? L&rsquo;opération n&rsquo;est pas très compliquée en réalité : il suffit de :</p>
<ul>
<li>supprimer la session en miroir qui concerne nos bases de données</li>
<li>initier une sauvegarde du journal de la base de données sur le serveur principal</li>
<li>restaurer la sauvegarde du journal sur la base de données en mode NORECOVERY sur le serveur en miroir (il n&rsquo;est pas obligatoire de restaurer une sauvegarde complète pour resynchroniser l&rsquo;instance principale et l&rsquo;instance en miroir)</li>
<li>recréer la session miroir entre les 2 instances concernées</li>
</ul>
<p>&#160;</p>
<p>Sur le serveur principal :</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:650px;"><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;<span style="color: #808080; font-style: italic;">-- Désactivation session miroir</span><br />
<span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> DXXXXXX_MIRRORING <span style="color: #993333; font-weight: bold;">SET</span> PARTNER OFF;<br />
<span style="color: #993333; font-weight: bold;">GO</span><br />
<br />
<span style="color: #808080; font-style: italic;">-- Sauvegarde des données du journal non envoyées sur le miroir</span><br />
BACKUP LOG DXXXXXX_MIRRORING <span style="color: #993333; font-weight: bold;">TO</span> DISK <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'E:<span style="color: #000099; font-weight: bold;">\M</span>SSQL<span style="color: #000099; font-weight: bold;">\B</span>ACKUP<span style="color: #000099; font-weight: bold;">\D</span>XXXXXX_MIRRORING.TRN'</span><br />
<span style="color: #993333; font-weight: bold;">WITH</span> INIT;<br />
<span style="color: #993333; font-weight: bold;">GO</span></div></div>
<p>&#160;</p>
<p>Sur le serveur miroir :</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:650px;"><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;<span style="color: #808080; font-style: italic;">-- Restauration des données du journal + fichier manquant</span><br />
RESTORE <span style="color: #993333; font-weight: bold;">DATABASE</span> DXXXXXX_MIRRORING <br />
FILE <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'DXXXXXX_2'</span><br />
<span style="color: #993333; font-weight: bold;">FROM</span> DISK <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'E:<span style="color: #000099; font-weight: bold;">\M</span>SSQL2<span style="color: #000099; font-weight: bold;">\B</span>ACKUP<span style="color: #000099; font-weight: bold;">\D</span>XXXXXX_MIRRORING.TRN'</span><br />
<span style="color: #993333; font-weight: bold;">WITH</span> MOVE <span style="color: #ff0000;">'DXXXXXX_2'</span> <span style="color: #993333; font-weight: bold;">TO</span> <span style="color: #ff0000;">'E:<span style="color: #000099; font-weight: bold;">\M</span>SSQL2<span style="color: #000099; font-weight: bold;">\D</span>XXXXXX_2.ndf'</span><span style="color: #66cc66;">,</span><br />
&nbsp; &nbsp; &nbsp;NORECOVERY;<br />
<span style="color: #993333; font-weight: bold;">GO</span><br />
&nbsp; &nbsp; &nbsp;<br />
<span style="color: #808080; font-style: italic;">-- Réactivation session en miroir</span><br />
<span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> DXXXXXX_MIRRORING <span style="color: #993333; font-weight: bold;">SET</span> PARTNER <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'TCP://SQL2008.insentia.lab:5022'</span>;</div></div>
<p>&#160;</p>
<p>Sur le serveur principal :</p>
<div class="codecolorer-container sql default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:650px;"><div class="sql codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;<span style="color: #808080; font-style: italic;">-- Réactivation session en miroir</span><br />
<span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> DXXXXXX_MIRRORING <span style="color: #993333; font-weight: bold;">SET</span> PARTNER <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'TCP://SQL2008.insentia.lab:5023'</span>;<br />
<span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> DXXXXXX_MIRRORING <span style="color: #993333; font-weight: bold;">SET</span> WITNESS <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'TCP://MCM.insentia.lab:5022'</span>;</div></div>
<p>&#160;</p>
<p>Et voilà cette manipulation permet de pouvoir resynchroniser nos bases de données en miroir sans avoir à effectuer une restauration complète</p>
<p>&#160;</p>
<p>David BARBARIN (Mikedavem)    <br />MVP SQL Server</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
