Bonjour a tous
je cherche a déployer l'outil sp_whoisactive sur toutes mes instances sql server en passant par quelques lignes de code en Powershhel
le script il interroge mes instances sql si il ne trouve pas la base de donnée dédier il va le crée a travers l'objet SMO et il installe la module
sauf s'il trouve la base il m'envoie un message d'erreur en disant que la base exists malgré que je test l’existence de la base avant leur création
Qui a une idée sur l'erreur
merci pour vos aides
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Import-Module "SQLPS" -DisableNameChecking Import-Module -Name "${PSScriptRoot}\Module\logModule.psm1" -DisableNameChecking Add-Type -AssemblyName "Microsoft.SqlServer.Smo" $servers= 'DESKTOP-95KKMMH\PRODUCTION','DESKTOP-95KKMMH' $database='produit' foreach($server in $servers) { Set-Location SQLSERVER:\SQL\$server $db = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Database -Argumentlist $server, $database if($db -ne $null) { $db.Create() } else { InitLog -PathLog "${PSScriptRoot}\${Instance}\DbaWhoIsActive.log" -NameScript "PsBackupFull" Log -message "Server : ${$server}" Install-DbaWhoIsActive -SqlInstance $server -Database $database } }
Partager