2016-08-19 14 views
1

ServerConnectionを使用しているときにSMOを使用してSQL Serverに接続する際に問題があります。ここ数ヶ月間、これはうまくいっていますが、今は失敗しています。スクリプトの抜粋です:Powershell SMO Can not Connect

 $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 

答えて

0

あなたはほぼ確実にあなたのSQLログインと権限の問題を持っています。間違ったパスワードを使用しているか、ログインに適切なクレジットがありません。

困ったことに、この問題が発生したとき、ログインパスワードが間違って入力されたことが判明しました。

ログインに失敗したという特定のエラーが予想されました。代わりにそれはより一般的だった:Failed to connect to server localhost.、私を捨てた。

あなたのように、私は$LoginSecure = $Trueでテストを実行しましたが、サーバーへの接続が正常だったことを伝えました。それだけで、私は誤植に気付き、SMOの至福へと向かいました。