SSMS 17を搭載したWindows 10ボックスがあります。SSMS2016をインストールしましたが、アンインストールしました。 SqlServerモジュールをインストールしようとすると、次の警告が表示されます。
C:\WINDOWS\system32> install-module sqlserver -Scope AllUsers
Untrusted repository
You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy
value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): y
PackageManagement\Install-Package : The following commands are already available on this system:'Add-RoleMember,Add-SqlAvailabilityDatabase,Add-SqlAvailabilityGroupListenerStaticIp,Add-SqlAzu
reAuthenticationContext,Add-SqlColumnEncryptionKeyValue,Add-SqlFirewallRule,Add-SqlLogin,Backup-ASDatabase,Backup-SqlDatabase,Complete-SqlColumnMasterKeyRotation,ConvertFrom-EncodedSqlName,Co
nvertTo-EncodedSqlName,Convert-UrnToPath,Disable-SqlAlwaysOn,Enable-SqlAlwaysOn,Get-SqlAgent,Get-SqlAgentJob,Get-SqlAgentJobHistory,Get-SqlAgentJobSchedule,Get-SqlAgentJobStep,Get-SqlAgentSch
edule,Get-SqlColumnEncryptionKey,Get-SqlColumnMasterKey,Get-SqlCredential,Get-SqlDatabase,Get-SqlErrorLog,Get-SqlInstance,Get-SqlLogin,Get-SqlSmartAdmin,Grant-SqlAvailabilityGroupCreateAnyDat
abase,Invoke-ASCmd,Invoke-PolicyEvaluation,Invoke-ProcessASDatabase,Invoke-ProcessCube,Invoke-ProcessDimension,Invoke-ProcessPartition,Invoke-ProcessTable,Invoke-Sqlcmd,Invoke-SqlColumnMaster
KeyRotation,Join-SqlAvailabilityGroup,Merge-Partition,New-RestoreFolder,New-RestoreLocation,New-SqlAvailabilityGroup,New-SqlAvailabilityGroupListener,New-SqlAvailabilityReplica,New-SqlAzureKe
yVaultColumnMasterKeySettings,New-SqlBackupEncryptionOption,New-SqlCertificateStoreColumnMasterKeySettings,New-SqlCngColumnMasterKeySettings,New-SqlColumnEncryptionKey,New-SqlColumnEncryption
KeyEncryptedValue,New-SqlColumnEncryptionSettings,New-SqlColumnMasterKey,New-SqlColumnMasterKeySettings,New-SqlCredential,New-SqlCspColumnMasterKeySettings,New-SqlHADREndpoint,Read-SqlTableDa
ta,Read-SqlViewData,Remove-RoleMember,Remove-SqlAvailabilityDatabase,Remove-SqlAvailabilityGroup,Remove-SqlAvailabilityReplica,Remove-SqlColumnEncryptionKey,Remove-SqlColumnEncryptionKeyValue
,Remove-SqlColumnMasterKey,Remove-SqlCredential,Remove-SqlFirewallRule,Remove-SqlLogin,Restore-ASDatabase,Restore-SqlDatabase,Resume-SqlAvailabilityDatabase,Revoke-SqlAvailabilityGroupCreateA
nyDatabase,Save-SqlMigrationReport,Set-SqlAuthenticationMode,Set-SqlAvailabilityGroup,Set-SqlAvailabilityGroupListener,Set-SqlAvailabilityReplica,Set-SqlAvailabilityReplicaRoleToSecondary,Set
-SqlColumnEncryption,Set-SqlCredential,Set-SqlErrorLog,Set-SqlHADREndpoint,Set-SqlNetworkConfiguration,Set-SqlSmartAdmin,Start-SqlInstance,Stop-SqlInstance,Suspend-SqlAvailabilityDatabase,Swi
tch-SqlAvailabilityGroup,Test-SqlAvailabilityGroup,Test-SqlAvailabilityReplica,Test-SqlDatabaseReplicaState,Test-SqlSmartAdmin,Write-SqlTableData'. This module 'SqlServer' may override the
existing commands. If you still want to install this module 'SqlServer', use -AllowClobber parameter.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:1809 char:21
+ ... $null = PackageManagement\Install-Package @PSBoundParameters
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package], Exception
+ FullyQualifiedErrorId : CommandAlreadyAvailable,Validate-ModuleCommandAlreadyAvailable,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage
これは正常ですか、それとも正しくアンインストールされませんでしたか?これがSet-ColumnEncryptionで発生しているいくつかの問題を引き起こしているのではないかと思います。
2017の初期インストールで問題が発生しましたが、SSMS 2016アンインストーラーがインストールしていないフォルダーを削除する必要がありました。そのフォルダが何なのかわからないので、最初に見つけた修正へのリンクが見つかりません。
2人が示唆したように、古いバージョンのSqlServerがインストールされていないようです。
Loading personal and system profiles took 19921ms.
C:\WINDOWS\system32> import-module sqlserver
import-module : The specified module 'sqlserver' was not loaded because no valid module file was found in any module directory.
At line:1 char:1
+ import-module sqlserver
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (sqlserver:String) [Import-Module], FileNotFoundException
+ FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
C:\WINDOWS\system32> Get-Module sqlserver -ListAvailable
C:\WINDOWS\system32>
ただし、SQLPSモジュールは持っています。
C:\WINDOWS\system32> Get-Module sqlps -ListAvailable
Directory: C:\Program Files (x86)\Microsoft SQL Server\130\Tools\PowerShell\Modules
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Manifest 1.0 SQLPS {Backup-SqlDatabase, Save-SqlMigrationReport, Add-SqlAvailabilityDatabase, Add-SqlAvailabilityGroupListenerStaticIp...}
Directory: C:\Program Files (x86)\Microsoft SQL Server\140\Tools\PowerShell\Modules
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Manifest 14.0 SQLPS {Backup-SqlDatabase, Save-SqlMigrationReport, Add-SqlAvailabilityDatabase, Add-SqlAvailabilityGroupListenerStaticIp...}
C:\WINDOWS\system32>
これは、sqlserver
モジュールを含むという意味でSSMS 2016から残っている可能性がありますが、MSはバージョンフォルダーに配置していませんでした。 PSGalleryのどのモジュールが現在一般的に実行されます。
チェックした場合Get-Module sqlserver -ListAvailable | select name, version, modulebase
あなたは彼らが行く道を見るでしょう。
SSMS 2016、SSMS 17、およびWindows 10マシンにインストールされているPSGalleryのsqlserver
モジュールがあります。
20.0がSqlServerモジュールフォルダー内にダンプされていることがわかります。 PSGalleryからモジュールをインストールしたときに発生したエラーが発生しました。これは、関数が同じ名前であるために予想されるものです。
あなたのオプションは、SSMS 2016に付属していた古いバージョンを削除するか、-AllowClobber
、それで結構です。