<?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; alias</title>
	<atom:link href="https://blog.developpez.com/mikedavem/ptag/alias/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>Powershell : scripter la cr&#233;ation d&#8217;alias SQL Server</title>
		<link>https://blog.developpez.com/mikedavem/p11586/sql-server-2008/powershell-scripter-la-cration-dalias-sql-server</link>
		<comments>https://blog.developpez.com/mikedavem/p11586/sql-server-2008/powershell-scripter-la-cration-dalias-sql-server#comments</comments>
		<pubDate>Tue, 18 Dec 2012 17:20:37 +0000</pubDate>
		<dc:creator><![CDATA[mikedavem]]></dc:creator>
				<category><![CDATA[SQL Server 2008]]></category>
		<category><![CDATA[SQL Server 2008 R2]]></category>
		<category><![CDATA[SQL Server 2012]]></category>
		<category><![CDATA[alias]]></category>
		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/mikedavem/?p=284</guid>
		<description><![CDATA[J’ai eu récemment à définir une procédure d’installation de serveurs liés SQL Server pour une application. Cette procédure doit être bien entendu testée en environnement de qualité et en production.&#160; De plus chez mon client, un 2ème environnement de qualité &#8230; <a href="https://blog.developpez.com/mikedavem/p11586/sql-server-2008/powershell-scripter-la-cration-dalias-sql-server">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>J’ai eu récemment à définir une procédure d’installation de serveurs liés SQL Server pour une application. Cette procédure doit être bien entendu testée en environnement de qualité et en production.&#160; De plus chez mon client, un 2ème environnement de qualité est prévu en parallèle pour installer l’application concernée. Le principal souci ici est que les noms de serveurs liés vont changés et que cela risque d’avoir un impact au niveau du code de l’application. Nous ne pouvions pas nous permettre de mettre à jour l’ensemble du code TSQL applicatif à chaque changement d’environnement. Pour répondre à cette problématique nous avons choisi d’utiliser des alias SQL Server. L’utilisation des alias est beaucoup plus flexible avec les serveurs liés. Il suffit de changer ces noms sans avoir un impact sur le code. </p>
<p>Mais revenons à notre problématique initiale : comment scripter la création des alias SQL Server ? Il n’existe pas de procédure système T-SQL qui permette de faire cela. La solution ici est d’utiliser les classes WMI correspondantes (ici j’utilise un SQL Server 2008). Comme nous sommes à l’air du PowerShell voici le script utilisé permettant la création d’alias sous SQL Server :</p>
<p><div class="codecolorer-container powershell default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:650px;"><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0000FF;">param</span> <br />
<span style="color: #000000;">&#40;</span> <br />
<span style="color: #800080;">$server</span><span style="color: pink;">=</span>$<span style="color: #000000;">&#40;</span><span style="color: #0000FF;">throw</span> <span style="color: #800000;">&quot;Mandatory parameter -instance_name_sot not supplied&quot;</span><span style="color: #000000;">&#41;</span> <br />
<span style="color: #000000;">&#41;</span> <br />
<br />
<br />
<span style="color: #008000;"># Example script to create an alias </span><br />
<span style="color: #800080;">$alias</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span><span style="color: #008080;">wmiclass</span><span style="color: #000000;">&#93;</span> <span style="color: #800000;">'\\.\root\Microsoft\SqlServer\ComputerManagement10:SqlServerAlias'</span><span style="color: #000000;">&#41;</span>.CreateInstance<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <br />
<span style="color: #800080;">$alias</span>.AliasName <span style="color: pink;">=</span> <span style="color: #800000;">'SERVER_ALIAS'</span> <br />
<span style="color: #800080;">$alias</span>.ConnectionString <span style="color: pink;">=</span> <span style="color: #800000;">'1433'</span> <span style="color: #008000;">#connection specific parameters depending on the protocol </span><br />
<span style="color: #800080;">$alias</span>.ProtocolName <span style="color: pink;">=</span> <span style="color: #800000;">'tcp'</span> <br />
<span style="color: #800080;">$alias</span>.ServerName <span style="color: pink;">=</span> <span style="color: #800080;">$server</span> <br />
<span style="color: #800080;">$alias</span>.Put<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-Null</span>; <br />
<br />
<span style="color: #008000;"># List existing aliases </span><br />
<span style="color: #008080; font-weight: bold;">Get-WmiObject</span> <span style="color: #008080; font-style: italic;">-Namespace</span> <span style="color: #800000;">'root\Microsoft\SqlServer\ComputerManagement10'</span> <span style="color: #008080; font-style: italic;">-Class</span> <span style="color: #800000;">'SqlServerAlias'</span> <span style="color: pink;">|</span> <br />
&nbsp; &nbsp; <span style="color: #008080; font-weight: bold;">Format-Table</span> <span style="color: #008080; font-style: italic;">-Property</span> <span style="color: #800000;">'AliasName'</span><span style="color: pink;">,</span> <span style="color: #800000;">'ServerName'</span><span style="color: pink;">,</span> <span style="color: #800000;">'ProtocolName'</span><span style="color: pink;">,</span> <span style="color: #800000;">'ConnectionString'</span></div></div>
</p>
<p>&#160;</p>
<p>… à utiliser de la manière suivante :</p>
<p><div class="codecolorer-container powershell default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:650px;"><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;<span style="color: pink;">&amp;</span> <span style="color: #800000;">'.\deployalias'</span> –server servername</div></div>
</p>
<p>&#160;</p>
<p><a href="http://blog.developpez.com/mikedavem/files/2012/12/image.png"><img style="border-left-width: 0px;border-right-width: 0px;border-bottom-width: 0px;padding-top: 0px;padding-left: 0px;padding-right: 0px;border-top-width: 0px" border="0" alt="image" src="http://blog.developpez.com/mikedavem/files/2012/12/image_thumb.png" width="747" height="56" /></a></p>
<p>&#160;</p>
<p>Vous pouvez tout à fait modifier ce script et le rendre plus paramétrable (nom de l’alias, no de port etc …). Encore une chose, en fonction du besoin vous allez sans doute devoir installer les alias pour les 2 types d’architecteur x86 et x64. Pour se faire il suffit de lancer le script avec Windows PowerShell (x64) et Windows PowerShell (x86). </p>
<p>&#160;</p>
<p>Bon déploiement</p>
<p>David BARBARIN (Mikedavem)    <br />MVP SQL Server</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
