Powershell SMO无法连接

时间:2016-08-19 17:59:05

标签: sql powershell smo

使用ServerConnection时,我在使用SMO连接到SQL Server时遇到问题。在过去的几个月里,这一直在发挥作用,但现在却失败了。这是脚本的片段:

        $svrname = "Server"

        #Establish Server connection
        Write-ColorOutput "Establishing SQL Server Connection to $svrName" "White"
        $mysvrConn = new-object Microsoft.SqlServer.Management.Common.ServerConnection
        $mysvrConn.ServerInstance=$svrName
        $mysvrConn.LoginSecure = $false
        $mysvrConn.Login = "Admin"
        $mysvrConn.Password = "Password"

        $svr = new-object 'Microsoft.SqlServer.Management.SMO.Server' $mysvrConn

但是,以下工作。

$svrname = "Server"
$svr = new-object ('Microsoft.SQLServer.Management.SMO.Server') $svrname

和集会:

        Write-ColorOutput "Loading assemblies" "White"
        [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SQLServer.Smo") | out-null
        [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoExtended") | out-null
        [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo") | out-null
        [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoEnum") | Out-Null

1 个答案:

答案 0 :(得分:0)

您几乎肯定会遇到SQL登录的权限问题。您要么使用了错误的密码,要么登录没有正确的信用。

令人尴尬的是,当我遇到这个问题时,原来是我输错了登录密码。

我曾预料到一条特定错误,说明登录失败。相反,它更通用:Failed to connect to server localhost.,它让我失望。

和你一样,我运行了$LoginSecure = $True的测试,告诉我与服务器的连接没问题。只有到那时我才发现我的错字并且正在前往SMO幸福的路上。