我正在尝试连接到远程托管的服务器\实例。该服务器位于我也连接到的域中(我可以使用 SQL Server auth 并在本地使用 SSMS 提供的凭据登录)
Import-Module SQLPS
$query = 'select GETDATE() as date'
$op = invoke-Sqlcmd -HostName 'servername' -Database 'DBName' -Username 'UN' -Password 'PWD' -Query "$query"
$op | Format-Table
预期产出为
2016-02-12 06:54:26.410
但我得到的是
PS SQLSERVER:> Import-Module SQLPS
$query = 'select GETDATE() as date'
$op = invoke-Sqlcmd -HostName 'servername' -Database 'DBName' -Username 'UN' -Password 'Pwd' -Query "$query " #-IgnoreProviderContext
$op | 格式表
警告:从模块“SQLPS”中导入的一些命令的名称包括未经批准的动词,可能会使它们不易被发现。要查找带有未批准动词的命令,请使用 Verbose 参数再次运行 Import-Module 命令。要获得批准的动词列表,请键入 Get-Verb。
invoke-Sqlcmd:用户“UN”登录失败。
在 line:3 char:7
+ $op = invoke-Sqlcmd -HostName 'servername' -Dat ...
+ CategoryInfo : InvalidOperation: (:) [Invoke-Sqlcmd],
SqlException + FullyQualifiedErrorId : SqlExectionError,Microsoft.SqlServer.Management.PowerShell.GetScriptCommandinvoke-Sqlcmd :
在第 3 行 char:7
+ $op = invoke-Sqlcmd -HostName 'servername' -Dat ...
+ ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ParserError: (:) [Invoke-Sqlcmd],ParserException
+ FullyQualifiedErrorId:ExecutionFailureException,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand
大家能帮我找出这是什么原因造成的吗?
我是否必须在任何地方指出这是 SQL Server 身份验证?