使用Invoke-Command远程安装SQL

我想通过使用Invoke-Command远程通过Powershell在Win 2012 r2服务器上安装SQL Server 2012,但是失败并显示此错误

"Validation for setting 'SQLSVCACCOUNT' failed. Error message: The SQL Server service account login or password is not valid. Use SQL Server Configuration Manager to update the service account." 

login名和密码是正确的。 当我直接在服务器上执行相同的命令,它工作正常..我不明白。

我正在使用域pipe理员凭据来启动我的PSSession。

这是我的代码:

 $SApwd = "MyPassword" $ServiceAccount= "SPRINGFIELD\SQLCitrix" $ServicePassword = "MyPassword" $SqlCollation = "French_CI_AS" $user = "Springfield\Administrator" $password = ConvertTo-SecureString -AsPlainText -Force -String "MyPassword" $credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$password $session = New-PSSession -ComputerName $ipsqlserver -Credential $credentials Invoke-Command -Session $session -ScriptBlock {Set-Location -Path C:\sources\sql } Invoke-Command -Session $session -ScriptBlock {.\Setup.exe /SAPWD=$using:SApwd /IACCEPTSQLSERVERLICENSETERMS /Q /UpdateEnabled="False" /FEATURES=SQLENGINE,SSMS,ADV_SSMS /INDICATEPROGRESS="True" /X86="False" /ACTION=INSTALL /INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server" /INSTALLSHAREDWOWDIR="C:\Program Files (x86)\Microsoft SQL Server" /INSTANCENAME="MSSQLSERVER" /INSTANCEID="MSSQLSERVER" /SQMREPORTING="False" /ERRORREPORTING="False" /INSTANCEDIR="C:\Program Files\Microsoft SQL Server" /AGTSVCACCOUNT=$using:ServiceAccount /AGTSVCPASSWORD=$using:ServicePassword /AGTSVCSTARTUPTYPE="Automatic" /SQLSVCSTARTUPTYPE="Automatic" /FILESTREAMLEVEL="0" /ENABLERANU="False" /SQLCOLLATION="French_CI_AS" /SQLSVCACCOUNT=$using:ServiceAccount /SQLSVCPASSWORD=$using:ServicePassword /SQLSYSADMINACCOUNTS="CASTOR\Administrator" /SECURITYMODE="SQL" /TCPENABLED="1" /NPENABLED="0" /BROWSERSVCSTARTUPTYPE="Automatic"} 

这里有一个更详细的日志文件: http : //pastebin.com/nNurAz0g

谢谢你的帮助

您需要让目标机器受信任进行委派。 在ADUC转到目标计算机的属性 – “ 委派”选项卡 – >信任此计算机委派给任何服务(仅Kerberos) 。 然后设置正确的SPN以允许服务帐户模拟目标框:

 setspn -A MSSQLSvc/FQDNofYourTargetBox domain\accountname setspn -A MSSQLSvc/FQDNofYourTargetBox:1433 domain\accountname setspn -A MSSQLSvc/NetbiosNameofYourTargetBox domain\accountname 

留出一些时间让SPN信息在森林中传播,然后重试。 有关SPN的更多信息,请访问: http : //msdn.microsoft.com/en-gb/library/ms191153.aspx 。