2017-11-21 37 views
0

ここに私の質問があります:SQL Server 2008 R2(SP3)を実行しているサーバーがあり、管理用のPowerShellスクリプトを作成しようとしていますタスク。異なるSQL Serverバージョン間のMicrosoft.SqlServer.Management.Smo.Serverクラスの互換性

このPowerShellスクリプトでは、クラスMicrosoft.SqlServer.Management.SmoEnumServerPermissionsというメソッドが使用されています。 official MS documentation on this methodによれば、これはSQL Server 2012以降でのみサポートされています。

このクラスはMicrosoft.SqlServer.Smo.dllの内部にあるので、このメソッド呼び出しと互換性のあるSQL Server Management Objetcs(SMO)の更新バージョンを古いバージョンで実行する方法はありませんSQL Serverの(2008 R2のような)?私はこれを受け入れる必要があります私のバージョンで実行されませんか?それとも、何かを更新して動作させる方法はありますか?

ありがとうございます!

+0

私はこの特定のクラスの仕様を確信していませんが、一般的に、このような機能が特定のバージョンでサポートされていない場合は、メソッドが相互作用するか変更するインターフェイス/あなたが更新されたクラスを持っていれば。 – BenH

答えて

1

あなたは、Microsoftのドキュメントは、このためのSQL Server 2012 +をサポートし、それを述べていることを言っている場合は、次の間違ったであろうと enter image description here

、正式にはサポートしているバージョン述べていないし、サポートしていません。 SMOはSQL Server Management Studioのように扱われます。新しいバージョンを使用して、任意のバージョンのSQL Serverに接続できます。唯一の規定は、SQL Serverの下位バージョンに存在しないプロパティに基づいて特定のプロパティまたはクラスが失敗するか、機能が利用できないことです(SQL Server 2008 R2のAvailabilityGroup名前空間が失敗するなど)。

例として、PowerShellモジュールdbatoolsには、最新バージョンのSMOがそのモジュールとともにパッケージ化されています。したがって、新しいマシンにそのモジュールをインストールした場合は、2000年以降の任意のバージョンのSQL Serverに接続できます。このモジュールには、SQL Server 2000を実行するコマンドと、2012年以降のバージョンのSQL Serverのみをサポートするコマンドがあります。

+0

@ShawnMeltonありがとうございました! EnumServerPermissionsと私のサーバーの間にこのように見える非互換性がある理由は、失敗していたパペットコード(PowerShellコードを実行したコード)を実行していたためです。ある時点で私はこのエラーをゲットしていました 'Powershell dscリソースMSFT_xSQLServerPermissionはTest-TargetResourceを実行できませんでした.EnumServerPermissionsと引数数2に対してオーバーロードが見つかりません。しかし、私はこのエラーを(同じサーバー上で)同じサーバー上に再現しようとしました... –

+0

... EnumServerPermissionsを2つのパラメータで使用して15行のPowerShellスクリプトを作成し、驚いたことにそれが機能しました。だからオリジナルのPuppetコードに戻ってきました。もう一度働いて!...神の愛のために私は数日前に失敗していた理由を説明することができず、今働いています(私はこれが起こると嫌いですが)。 Microsoft.SqlServer.Management.Smoが更新されました。そのため、現在は機能しています。ドキュメントのコンボボックスが互換性を示すものであれば、それは何ですか? –

+0

2012年と2014年だけが表示されているという事実は、そのページで私たちに伝えています? 2. Microsoft.SqlServer.Management.Smoのバージョンを確認するにはどうすればよいですか? Microsoft.SqlServer.Smo.dllのプロパティを調べるか、それを確認する方法がありますか? –

関連する問題